Sử dụng CONCAT() kết hợp IFNULL() để nối chuỗi vào cột, xử lý trường hợp cột là NULL.
Cú pháp:
UPDATE ten_bang SET ten_cot = CONCAT(IFNULL(ten_cot, ''), 'chuoi_noi');
Ví dụ: tạo bảng AppendDataDemo:
mysql> CREATE TABLE AppendDataDemo (
-> StudentId INT,
-> StudentName VARCHAR(100),
-> StudentAge INT
-> );
Chèn dữ liệu (có giá trị NULL):
mysql> INSERT INTO AppendDataDemo VALUES (101, 'John', 23); mysql> INSERT INTO AppendDataDemo VALUES (102, NULL, 24); mysql> INSERT INTO AppendDataDemo VALUES (103, 'Mike', 26);
Dữ liệu gốc:
mysql> SELECT * FROM AppendDataDemo;
+-----------+-------------+------------+ | StudentId | StudentName | StudentAge | +-----------+-------------+------------+ | 101 | John | 23 | | 102 | NULL | 24 | | 103 | Mike | 26 | +-----------+-------------+------------+
Nối chuỗi ' Carol,Sam,Maria' vào cột StudentName cho tất cả hàng:
mysql> UPDATE AppendDataDemo SET StudentName = CONCAT(IFNULL(StudentName, ''), ' Carol,Sam,Maria');
Kết quả:
mysql> SELECT * FROM AppendDataDemo;
+-----------+----------------------+------------+ | StudentId | StudentName | StudentAge | +-----------+----------------------+------------+ | 101 | John Carol,Sam,Maria | 23 | | 102 | Carol,Sam,Maria | 24 | | 103 | Mike Carol,Sam,Maria | 26 | +-----------+----------------------+------------+
IFNULL(cot, '') chuyển NULL thành chuỗi rỗng trước khi nối, tránh kết quả NULL (vì CONCAT với NULL trả về NULL).