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

Bulk Update: เปลี่ยนค่าทั้งหมดในคอลัมน์ MySQL

อัปเดตข้อมูลทั้งหมดในคอลัมน์ (Bulk Update)

ใช้คำสั่ง UPDATE โดยไม่มี WHERE Clause เพื่อเปลี่ยนค่าในทุกแถว

ตัวอย่าง

CREATE TABLE BulkChangeDemo (
    CustomerId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    CustomerName VARCHAR(20),
    isEducated BOOLEAN
);

INSERT INTO BulkChangeDemo(CustomerName, isEducated) VALUES
('Larry', true), ('John', false), ('Carol', false),
('Mike', true), ('David', false), ('Bob', false);

ก่อนอัปเดต

+------------+--------------+------------+
| CustomerId | CustomerName | isEducated |
+------------+--------------+------------+
| 1          | Larry        | 1          |
| 2          | John         | 0          |
| 3          | Carol        | 0          |
| 4          | Mike         | 1          |
| 5          | David        | 0          |
| 6          | Bob          | 0          |
+------------+--------------+------------+

คำสั่ง Bulk Update

UPDATE BulkChangeDemo SET isEducated = true;

ผลลัพธ์

Query OK, 4 rows affected (0.18 sec)
Rows matched: 6 Changed: 4 Warnings: 0

เปลี่ยน 4 แถว (ที่เป็น false เดิม) คง 2 แถวที่เป็น true อยู่แล้ว

ข้อควรระวัง

  • ไม่มี WHERE = อัปเดตทุกแถวในตาราง
  • ควร Backup หรือทดสอบใน Transaction ก่อน
  • ใช้ WHERE isEducated = false เพื่อจำกัดขอบเขตได้