mysql替换语句 部分替换

update tabel(表名) set Fields(字段名)=replace( Fields,’原内容’,'替换成的内容’)

UPDATE `cdb_pms`

SET `subject` = REPLACE(`subject`, ‘Welcome to’, ‘欢迎光临’)

WHERE INSTR(`subject`,’Welcome to’) > 0
替换cdb_posts表的message字段,将“viewthread.php?tid=3989”替换成“viewthread.php?tid=16546”

UPDATE `cdb_posts`

SET `message`= REPLACE(`message`, ‘viewthread.php?tid=3989′, ‘viewthread.php?tid=16546′)

WHERE INSTR(`message`,’viewthread.php?tid=3989′) > 0 ;

删除所有的空格

UPDATE `es_product`   SET `pro_pub_time` = TRIM(`pro_pub_time`)

lower或者upper

删除所有饱含’['或者']‘或者’.'的字符

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ‘[','')   WHERE INSTR(`pro_pub_time`,'[') > 0

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ']‘,”)   WHERE INSTR(`pro_pub_time`,’]') > 0

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ‘.’,'-’)   WHERE INSTR(`pro_pub_time`,’.') > 0

替换所有含中文’-'的为英文’-’

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ‘-’,'-’)   WHERE INSTR(`pro_pub_time`,’-’) > 0

将所有的年月都替换成’-’

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ‘年’,'-’)   WHERE INSTR(`pro_pub_time`,’年’) > 0

UPDATE `es_product`   SET `pro_pub_time` = REPLACE(`pro_pub_time`, ‘月’,'-’)   WHERE INSTR(`pro_pub_time`,’月’) > 0

将所有’2005-04-’这种类型的替换成’2005-04-01′

UPDATE `es_product`   SET `pro_pub_time` = CONCAT( `pro_pub_time`, ’01′)   WHERE SUBSTRING_INDEX( `pro_pub_time`, ‘-’, -1) = ” AND LENGTH(`pro_pub_time`) > 0 AND LENGTH(`pro_pub_time`) > 5

将所有’2005-’这种类型替换成’2005-01-01′

UPDATE `es_product`   SET `pro_pub_time` = CONCAT( `pro_pub_time`, ’01-01′) WHERE INSTR(`pro_pub_time`,’-') > 0 AND   LENGTH(`pro_pub_time`) = 5

将所有 饱含’-',但是位数小于8的改成追加’-01′

UPDATE `es_product`   SET `pro_pub_time` = CONCAT( `pro_pub_time`, ‘-01′) WHERE INSTR(`pro_pub_time`,’-') > 0 AND   LENGTH(`pro_pub_time`) < 8

将所有’2005′这样的改成’2005-01-01′

UPDATE `es_product`   SET `pro_pub_time` = CONCAT(`pro_pub_time`,’-01-01′) WHERE INSTR(`pro_pub_time`,’-') = 0 AND   LENGTH(`pro_pub_time`) = 4

最后将所有’2005-01-01′格式化成’2005年01月’

UPDATE `es_product`   SET `pro_pub_time` = DATE_FORMAT(`pro_pub_time`,’%Y年%m月’) WHERE INSTR(`pro_pub_time`,’-') > 0

批量替换 MySQL 指定字段中的字符串是数据库mysql替换语句 部分替换应用中很常见的需求,但是有很多初学者在遇到这种需求时,通常都是用脚本来实现;其实,MySQL 内置的有批量替换语法,效率也会高很多;想了解具体方法mysql替换语句 部分替换,继续阅读本文吧 :)

批量替换的具体语法是:

Code:

UPDATE 表名 SET

指定字段 = replace(指定字段, ’要替换的字符串’, ’想要的字符串’)

WHERE 条件;

如果你想把 article 表中 ID 小于5000的记录,content 字段中“解决”替换成“解放”,那么语法就是:

Code:

UPDATE article SET

content = replace(content, ’解决’, ’解放’)

WHERE ID<5000;

UPDATE `fengsh_shoplist`

SET `s_clickurl`= REPLACE(`s_clickurl`, ’15252835′, ’10190773′)

Mysql数据库like和REPLACE混用来实现字符查找替换

学习最好的方法莫过于实践,最快的途径莫过于示例,这段时间网站搬家,迫使我不断去看一些SQL操作方法,最终记载于此,以便将来参考。

1、时间操作

例:将GMT时间更改为GMT+8,可用INTERVAL把一段时间加到一个字段上。

UPDATE `wpcn_posts`
SET `post_date` = `post_date_gmt` + INTERVAL 8 HOUR
WHERE `post_date_gmt` = `post_date`

本例是为了对付Bo-Blog搬家到WP时大部分时间记录都没有被正确转换到GMT+8时区的问题。

2、字符查找替换

例:将某个图片的错误文件名更改为正确文件名。

UPDATE `wpcn_comments`
SET `comment_content` =
REPLACE ( `comment_content`, 'emot/ok', 'emot/pig' )
WHERE `comment_content` LIKE '%emot/ok%'

本例是为了对付Bo-Blog的pig.gif图片文件名被错误替换为ok.gif的问题,用到了REPLACE函数和LIKE操作符,注意LIKE后面的字段用%%匹配,而非*。

—————————————————-
继续阅读…