393天前2018-11-08 21:16:33 |    抢沙发  349 
不知道您有没有过这样的情况,项目上线一段时间后,有需求要求你要对文中中的一些内容进行替换,这个时候我们有两种解决方案,第一种是在程序上在输出前对内容进行替换。第二种就是直接在数据库里面对内容进行替换。本文要给您讲的就是第二种。

mysql

1,常规替换:
把test表中body字段中所有的a替换成b

UPDATE `test` SET body = REPLACE ( body, 'a', 'b' );
2,加判断的替换
将test表中的body包含aaa的记录,其中的bbb替换为ccc 简单版

update test set body=REPLACE(body,'bbb','ccc') where body REGEXP 'aaa';
3,if判断替换版
把test表中body字段中包含aaa的记录中的bbb替换成ccc并且把ddd替换成eee

update test set body=IF(body REGEXP aaa',REPLACE(body,'bbb','ccc'),REPLACE(body,'ddd','eee')) where 1=1;
以上的三种替换方式基本能应付日常维护中的需求了。需要的同学拿去不谢。

发表评论

暂无评论

登录

忘记密码 ?

切换登录

注册

扫一扫二维码分享