关于在MYSQL中批量替换或者删除某字符串的命令

关于在MYSQL中批量替换或者删除某字符串的命令
各位高手,请教一个问题。我写了一个MYSQL命令,但不知道对不对,帮忙看看。
我是要把ex_goods表中的big_pic字段名中的http://www.finerbuy.com/pic.php?p=http:// 替换成http://。
命令是:
UPDATE `ex_goods`
SET `big_pic` = REPLACE(`big_pic`,'http://www.finerbuy.com/pic.php?p=http://', 'http://')
WHERE INSTR(`big_pic','http://www.finerbuy.com/pic.php?p=http://') < 0
请问我这样写对不对?
还有就是表名,字段名是否需要用引号引起来?
是批量替换或者删除big_pic字段的值,
不是改数据库结构

------------------------

UPDATE `ex_goods` SET `big_pic` = 'http://' WHERE `big_pic` = 'http://www.finerbuy.com/pic.php?p=http://';
运行了,但结果是“影响了0行”
怎么会这样呢
1. 你这样写对不对测试一下不就行了。另外不圆大需要使用 where 语句,用 replace 如果没有这个字符串不就不替换嘛,还多巧掘查一次影响效率橘宽竖
2. 表名字段名如果不是关键字(比如 select where from group 这样的)就不需要引起来。另外,这个“引号”叫“反引号”
你的问题里面怎么还穿插罩者了一些http地址呢,所以你的问题我不是很理解。但是我觉得你这句话是不对的,因为你要修改表的字段名,也就是表物樱薯结构,要用颂灶alter,而update是用来更新数据的,很明显不能用来修改字段名的。
再加个条件只选择一条记录 试试不就知道了啊?
UPDATE `ex_goods` SET `big_pic` = '团侍http://' WHERE `big_pic` = 'http://www.finerbuy.com/pic.php?p=http://'
就可以了
不加引号也行,我习惯加,因为语法着色器有返念时候会把user这种表名着色,加引漏或困号就可以区分开
← 上一篇: 下一篇: →