如何在MySQL中将字符串添加到列值?

时间:2009-03-25 09:15:27

标签: mysql sql-update

我需要一个SQL更新语句来更新所有行的特定字段,并在现有值的前面添加字符串“test”。

例如,如果现有值为“try”,则它应该变为“testtry”。

5 个答案:

答案 0 :(得分:240)

您可以使用CONCAT功能执行此操作:

UPDATE tbl SET col=CONCAT('test',col);

如果您想要更聪明并且只更新尚未进行测试的列,请尝试

UPDATE tbl SET col=CONCAT('test',col)
WHERE col NOT LIKE 'test%';

答案 1 :(得分:15)

UPDATE tablename SET fieldname = CONCAT("test", fieldname) [WHERE ...]

答案 2 :(得分:7)

MySQL中的许多字符串更新函数似乎都是这样的: 如果一个参数是null,则连接或其他函数也会返回null。 因此,要更新具有null值的字段,请先将其设置为非空值,例如''

例如:

update table set field='' where field is null;
update table set field=concat(field,' append');

答案 3 :(得分:6)

这是一个简单的

UPDATE YourTable SET YourColumn = CONCAT('prependedString', YourColumn);

答案 4 :(得分:0)

  • UPDATE table_name SET Column1 = CONCAT('newtring',table_name.Column1)where 1
  • UPDATE table_name SET Column1 = CONCAT('newtring',table_name.Column2)where 1
  • UPDATE table_name SET Column1 = CONCAT('newtring',table_name.Column2,'newtring2')其中1

我们可以连接相同的列或表的其他列。