Мне нужно "добавить" данные в поле, которое уже содержит данные, не удаляя то, что в настоящее время существует. Например, если поле содержит HTML, мне нужно добавить дополнительный HTML в поле. Есть ли SQL-запрос, который будет делать это, или мне нужно вызвать данные в этом поле, объединить новые данные в существующие данные и перезагрузить их в базу данных?
Добавление данных в поле базы данных MySQL, в котором уже есть данные
Ответ 1
UPDATE Table SET Field=CONCAT(Field,'your extra html');
Ответ 2
UPDATE myTable SET html=concat(html,'<b>More HTML</b>') WHERE id='10'
... например. Разумеется, ваш ГДЕ будет отличаться.
Ответ 3
Добавить в конце поля, разделенного с разрывом строки:
UPDATE Table SET Comment = CONCAT_WS(CHAR(10 USING UTF8), Comment, 'my comment.');
-
CONCAT_WS()
добавляет несколько строк, разделенных данным разделителем. -
CHAR(10, UTF8)
- разрыв строки.
Ответ 4
UPDATE Table SET Field=CONCAT(IFNULL(Field, ''), 'Your extra HTML')
Если поле содержит значение NULL, CONCAT также вернет NULL. Использование IFNULL поможет вам обновить столбец, даже если оно имеет значение NULL.