前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mysql怎样控制replace替换的次数?

Mysql怎样控制replace替换的次数?

作者头像
全栈程序员站长
发布2022-07-07 11:28:01
2.1K0
发布2022-07-07 11:28:01
举报
文章被收录于专栏:全栈程序员必看

我想把“ABC是ABC”替换成“123是ABC”,也就是找出第一个ABC替换成123,MYSQL命令应该怎么写?

UPDATE data SET body=REPLACE(body, ‘ABC’, ‘123’);我用这个命令时会把所有ABC都替换成123,不知道怎么控制替换次数,请高人指教。

代码语言:javascript
复制
hemu780924大哥的代码虽然能用,但是有个致命的缺陷,

比如"123是ABC",如果想找出XYZ并替换成OPQ,因为在"123是ABC"找不到XYZ,然后命令就会在"123是ABC"前面插入XYZ,这个不是我想要的啊!
代码语言:javascript
复制
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就不替换了

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/113283.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年10月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档