Mysql怎样控制replace替换的次数?
Posted 码农编程进阶笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql怎样控制replace替换的次数?相关的知识,希望对你有一定的参考价值。
我想把“ABC是ABC”替换成“123是ABC”,也就是找出第一个ABC替换成123,mysql命令应该怎么写?
UPDATE data SET body=REPLACE(body, ‘ABC‘, ‘123‘);我用这个命令时会把所有ABC都替换成123,不知道怎么控制替换次数,请高人指教。
UPDATE data SET body=REPLACE(body, ‘ABC‘, ‘123‘);我用这个命令时会把所有ABC都替换成123,不知道怎么控制替换次数,请高人指教。
hemu780924大哥的代码虽然能用,但是有个致命的缺陷,
比如"123是ABC",如果想找出XYZ并替换成OPQ,因为在"123是ABC"找不到XYZ,然后命令就会在"123是ABC"前面插入XYZ,这个不是我想要的啊!
update table1 set body =
concat(
SUBSTRING(body ,1,position(‘ABC‘ in body )-1),
‘123‘,
substring(body ,position(‘ABC‘ in body )+length(‘ABC‘))) where body like ‘%ABC%‘
这里替换第一次的ABC ,没有ABC就不替换了
以上是关于Mysql怎样控制replace替换的次数?的主要内容,如果未能解决你的问题,请参考以下文章