在MySQL数据库中搜索替换查询

时间:2014-02-09 01:34:21

标签: mysql sql wordpress

如何搜索和替换数据库中的多个值?

例如,如果我想在表格中搜索黄色,蓝色和绿色的所有提及并用“黑色”替换它们,我将如何同时执行此操作,而无需执行查询对于每个单词?

我有表格wp_posts,希望此搜索并替换post_content中的所有内容。

命令究竟是什么样的?

谢谢!

2 个答案:

答案 0 :(得分:0)

对于single table更新

UPDATE `table_name`
 SET `field_name` = replace(same_field_name, 'unwanted_text', 'wanted_text')

来自multiple tables -

如果您想要从所有表格中进行修改,最好的方法是点击dump,然后find/replace并将其上传回来。

和/或使用数组来选择指定的颜色,应该是unwanted text,黑色应该是wanted text

答案 1 :(得分:0)

你可以做这样的事情

UPDATE wp_posts
   SET post_content = REPLACE(
                        REPLACE(
                          REPLACE(post_content, 
                          'yellow', 'black'), 
                        'blue', 'black'), 
                      'green', 'black')
 WHERE post_content LIKE '%yellow%'
    OR post_content LIKE '%blue%'
    OR post_content LIKE '%green%'

这是 SQLFiddle 演示