在 MySQL 中仅对字符的第一次出现执行搜索/替换


要仅对第一次出现的内容执行搜索/替换,请使用 CONCAT 和 REPLACE() 函数。

查询如下,用于设置用户定义会话变量 −

mysql> set @Sentence='Thks ks is a my string';
Query OK, 0 rows affected (0.00 sec)

在这种情况下,k 将仅被替换为 i 一次。查询如下。我们还使用了 INSTR() −

mysql> select @Sentence as NewString ,CONCAT(REPLACE(LEFT(@Sentence,
INSTR(@Sentence, 'k')), 'k', 'i'),
   -> SUBSTRING(@Sentence, INSTR(@Sentence, 'k') + 1)) as ChangeOnlyOneTime;

以下是仅将字符的第一次出现替换的输出 −

+------------------------+------------------------+
| NewString              | ChangeOnlyOneTime      |
+------------------------+------------------------+
| Thks ks is a my string | This ks is a my string |
+------------------------+------------------------+
1 row in set (0.00 sec)

更新时间:30-7-2019

185 个浏览量

开启你的 职业

通过完成课程获得认证

立即开始
广告
© . All rights reserved.