这个问题在这里已经有答案了:
使用mysql查询查找并替换整个表中的文本(13个答案)两年前关门了。有没有办法替换整个表中的所有字符(或一组字符)(不仅在一列内)例如,如果我想一次将整个表和所有列中的字符“ab”替换为其他字符(例如“cd”),该如何做?不涉及具体的数据库技术,但如果它将帮助-让我们说它是mysql。如果有帮助的话,我可以创建一个临时表或“最终”表。。
slhcrj9b1#
使用mysql的方法是:
UPDATE MyTable SET col001 = REPLACE(col1, 'ab', 'cd'), col002 = REPLACE(col2, 'ab', 'cd'), ... col100 = REPLACE(col100, 'ab', 'cd');
写出100个这样的子句很乏味,但是可以使用sql生成整个update语句:
SELECT CONCAT('UPDATE MyTable SET ', GROUP_CONCAT(CONCAT('`', COLUMN_NAME, '` = REPLACE(`', COLUMN_NAME, '`, '''ab'', ''cd'')'), ';') AS _sql FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'MyTable';
(未经测试)
1条答案
按热度按时间slhcrj9b1#
使用mysql的方法是:
写出100个这样的子句很乏味,但是可以使用sql生成整个update语句:
(未经测试)