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

ลบแถวข้อมูลใน MySQL ด้วยคำสั่ง DELETE

ใช้ DELETE FROM table WHERE condition ลบแถวที่ตรงเงื่อนไข

สร้างตารางตัวอย่าง

mysql> CREATE TABLE DemoTable (
    -> CustomerId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> CustomerName VARCHAR(100),
    -> CustomerAge INT
    -> );

เพิ่มข้อมูลตัวอย่าง

mysql> INSERT INTO DemoTable(CustomerName, CustomerAge) VALUES('John', 33);
mysql> INSERT INTO DemoTable(CustomerName, CustomerAge) VALUES('Bob', 25);
mysql> INSERT INTO DemoTable(CustomerName, CustomerAge) VALUES('David', 28);
mysql> INSERT INTO DemoTable(CustomerName, CustomerAge) VALUES('Carol', 29);

แสดงข้อมูล

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+------------+--------------+-------------+
| CustomerId | CustomerName | CustomerAge |
+------------+--------------+-------------+
| 1          | John         | 33          |
| 2          | Bob          | 25          |
| 3          | David        | 28          |
| 4          | Carol        | 29          |
+------------+--------------+-------------+

คำสั่งลบ David อายุ 28

mysql> DELETE FROM DemoTable WHERE CustomerName = 'David' AND CustomerAge = 28;

ตรวจสอบข้อมูลที่เหลือ

mysql> SELECT * FROM DemoTable;

ผลลัพธ์:

+------------+--------------+-------------+
| CustomerId | CustomerName | CustomerAge |
+------------+--------------+-------------+
| 1          | John         | 33          |
| 2          | Bob          | 25          |
| 4          | Carol        | 29          |
+------------+--------------+-------------+

คำเตือน: ทดสอบด้วย SELECT WHERE ... ก่อน DELETE จริง | ใช้ PRIMARY KEY ใน WHERE ได้ผลแม่นยำและเร็วกว่า | ไม่มี WHERE จะลบทุกแถว