Как добавить строку в значение столбца в MySQL?

Мне нужна инструкция обновления SQL для обновления определенного поля всех строк с строкой "test", которая должна быть добавлена ​​перед существующим значением.

Например, если существующее значение "try", оно должно стать "testtry".

Ответ 1

Вы можете использовать функцию CONCAT, чтобы сделать это:

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

Если вы хотите получить умнее и только обновить столбцы, у которых еще нет теста, попробуйте

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

Ответ 2

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

Ответ 3

Что простой

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

Ответ 4

Многие функции обновления строк в myqsl, похоже, работают следующим образом: если один аргумент равен null, то конкатенация или другие функции также возвращают значение null. Итак, чтобы обновить поле с нулевым значением, сначала установите его на ненулевое значение, например ''

Для ex:

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

Ответ 5

  • UPDATE table_name SET Column1 = CONCAT ('newtring', table_name.Column1), где 1
  • UPDATE table_name SET Column1 = CONCAT ('newtring', table_name.Column2), где 1
  • UPDATE table_name SET Column1 = CONCAT ('newtring', table_name.Column2, 'newtring2'), где 1

Мы можем заключить один и тот же столбец, а также другой столбец таблицы.