我需要一个 SQL update 语句来更新所有行的特定字段,并在现有值的前面添加一个字符串“ test”。
例如,如果现有的值是“ try”,那么它应该变成“ testtry”。
很简单
UPDATE YourTable SET YourColumn = CONCAT('prependedString', YourColumn);
您可以使用 康凯特函数来实现这一点:
UPDATE tbl SET col=CONCAT('test',col);
如果您想要更聪明,只更新那些没有预先添加测试的列,那么可以尝试这样做
UPDATE tbl SET col=CONCAT('test',col) WHERE col NOT LIKE 'test%';
UPDATE tablename SET fieldname = CONCAT("test", fieldname) [WHERE ...]
MySQL 中的许多字符串更新函数似乎是这样工作的: 如果一个参数是 null,那么连接或其他函数也返回 null。 因此,要使用 null值更新字段,首先要将其设置为非空值,如 ''
null
''
例如:
update table set field='' where field is null; update table set field=concat(field,' append');
我们可以连接表中的同一列或其他列。