Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

อัปเดตข้อมูลใน MySQL โดยเก็บข้อมูลเดิมไว้ (Concatenate)

ใช้ UPDATE ร่วมกับฟังก์ชัน CONCAT() เพื่อต่อข้อมูลใหม่เข้ากับข้อมูลเดิม

ไวยากรณ์

UPDATE yourTableName 
SET yourColumnName = CONCAT(yourColumnName, ",yourValue");

ตัวอย่างการใช้งาน

1. สร้างตารางและแทรกข้อมูล

mysql> create table DemoTable (CustomerName varchar(100));
mysql> insert into DemoTable values('Chris'), ('David'), ('Sam');

2. ข้อมูลก่อนอัปเดต

+--------------+
| CustomerName |
+--------------+
| Chris        |
| David        |
| Sam          |
+--------------+

3. อัปเดตต่อข้อความ ",Brown"

mysql> update DemoTable set CustomerName = concat(CustomerName, ",Brown");
Query OK, 3 rows affected (0.14 sec)

ผลลัพธ์หลังอัปเดต

+--------------+
| CustomerName |
+--------------+
| Chris,Brown  |
| David,Brown  |
| Sam,Brown    |
+--------------+

เคล็ดลับเพิ่มเติม

  • ใช้ CONCAT_WS(',', col, 'new') เพื่อใส่ตัวคั่นอัตโนมัติ (ข้าม NULL)
  • เงื่อนไข WHERE เพื่ออัปเดตเฉพาะบางแถว
  • สำรองข้อมูลก่อนรัน UPDATE จำนวนมาก
-- ใช้ COMMA แยกโดยอัตโนมัติ
UPDATE DemoTable SET CustomerName = CONCAT_WS(',', CustomerName, 'Brown');