MySql - 更新字符串部分的方法?

时间:2009-12-09 20:44:46

标签: mysql sql string sql-update

我正在寻找一种通过MySQL查询更新字符串的一部分的方法。

例如,如果我有10条记录都包含'string'作为字段值的一部分(即'something / string','something / stringlookhere','something / string / etcetera',有没有办法通过一个查询为每行更改'string'为'anothervalue',结果是'something / anothervalue','something / anothervaluelookhere','something / string / etcetera',有没有办法改变'anothervalue'< / p>

4 个答案:

答案 0 :(得分:204)

我认为这应该有效:

UPDATE table
SET field = REPLACE(field, 'string', 'anothervalue')
WHERE field LIKE '%string%';

答案 1 :(得分:25)

UPDATE `table` SET `field` = REPLACE(`field`, 'string', 'anothervalue')

答案 2 :(得分:14)

使用LIKE运算符查找您关注的行,并使用REPLACE函数更新它们。

例如:

UPDATE table_name SET field_name = REPLACE(field_name,'search','replace') WHERE field_name LIKE '%some_value%'

答案 3 :(得分:0)

这样的事情有什么作用吗?

update table_name
set column_name = replace(column_name, 'string%', 'string') 
where column_name like '%string%'