我將如何搜索並替換數據庫中的多個值?在MySQL數據庫中搜索替換查詢
例如,如果我想在表格中搜索黃色,藍色和綠色的所有提及,並將它們全部替換爲「黑色」,那麼我將如何在同一時間執行該操作,而無需執行查詢每個單詞?
我有表wp_posts
並希望此搜索和替換post_content
中的所有內容。
該命令到底是什麼樣的?
謝謝!
我將如何搜索並替換數據庫中的多個值?在MySQL數據庫中搜索替換查詢
例如,如果我想在表格中搜索黃色,藍色和綠色的所有提及,並將它們全部替換爲「黑色」,那麼我將如何在同一時間執行該操作,而無需執行查詢每個單詞?
我有表wp_posts
並希望此搜索和替換post_content
中的所有內容。
該命令到底是什麼樣的?
謝謝!
對於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
嗨,我不需要多個表 - 我需要多個值。因此,我們需要搜索並替換所提供的示例中的一個表格,一個字段以及大量值。轉儲和查找/替換會花費太長時間,因爲有太多的值需要逐個搜索並逐個替換。 – user1446650
你可以做這樣的事情
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演示
如果這是一次性的事情,您可能只需轉儲表內容即可快速完成工作,在文本編輯器中對.sql文件執行搜索並替換,然後再將它上傳到數據庫。 (這當然只適用於不替換任何對SQL語法至關重要的詞)。 – CBroe