MySql Update修改(替换)某个字段中包含的某个值,根据条件修改替换某个字段的一部分值
背景:
由于数据迁移和域名变更,Mysql中存储的文件下载地址变更;
要替换某一个字段中的部分内容,可以用update 语句和REPLACE方法,结构如下:
UPDATE 表名 SET 字段名= REPLACE( 需要替换值的字段名, '替换前关键字', '替换后关键字' )
WHERE 字段名 REGEXP "替换前的字段值";
MySql Update修改(替换)某个字段中包含的某个值:
例如1:
由于原域名http://www.test.com,需求将url替换成新地址https://wwwnew.test.com;
UPDATE 表名 SET 字段名 = REPLACE(字段名, '替换之前的值', '替换之后的值')
WHERE 修改条件;
UPDATE t_user SET img_url =
REPLACE(img_url, 'http://www.test.com', 'https://wwwnew.test.com')
WHERE u_code=56;
解释:
如果img_url字段内容是这种数据,只会修改前面url部分后面的不会被替换
http://www.test.com/img/20200718/user/img/3124.jpg
修改结果为:
https://wwwnew.test.com/img/20200718/user/img/3124.jpg
例如2:
替换订单中用户手机号前缀155改为170
UPDATE order SET mobile= REPLACE( mobile, 155, 170 ) ;
如果本篇文章对你有帮助的话,很高兴能够帮助上你。
当然,如果你觉得文章有什么让你觉得不合理、或者有更简单的实现方法又或者有理解不来的地方,希望你在看到之后能够在评论里指出来,我会在看到之后尽快的回复你。