Câu lệnh SQL DELETE

Câu lệnh DELETE FROM table WHERE ... dùng để xóa 1 hoặc nhiều dòng (records) dữ liệu.

Cú pháp DELETE

Chúng ta có thể sử dụng câu lệnh DELETE với 2 cách sau:

Cách 1: DELETE toàn bộ các dòng (records) có trong table (còn gọi là DELETE không điều kiện WHERE).

Cú pháp như sau:
DELETE FROM table_name;

Cách này cần phải sử dụng cẩn thận, nếu không có điều kiện WHERE dòng dữ liệu (record) cụ thể. Dữ liệu trong toàn bộ bảng (table) sẽ bị Xóa tất cả.

Cách 2: DELETE dữ liệu của 1 hoặc nhiều dòng (records) có trong table thỏa điều kiện cụ thể (còn gọi là DELETE có điều kiện WHERE).

Cú pháp như sau:
DELETE FROM table_name
WHERE condition1
      AND condition2
      OR condition3 ...;

Cách này thường được sử dụng trong dự án.


Ví dụ 1: Xóa các dòng dữ liệu (record) trong bảng (table) Nhà cung cấp shop_suppliers theo điều kiện WHERE id=10, id=12, id=13

  • Dữ liệu mong muốn xóa:
DELETE các dòng (record) có id=10, id=12, id=13 trong table Nhà cung cấp shop_suppliers:
id supplier_code supplier_name description image created_at updated_at
10 SUP10 Nokia Nokia suppliers/nokia_20200217170111.jpg 2020-02-17 16:08:51 NULL
12 SUP12 BPhone Điện thoại BPhone suppliers/bphone.jpg 2020-08-08 12:38:00 NULL
13 SUP13 VinPhone Điện thoại VinPhone suppliers/vinphone.jpg 2020-08-08 12:45:00 NULL
  • Lưu đồ Xóa dữ liệu

Step 1: Chuẩn bị câu lệnh DELETE query

  • Lưu đồ xử lý việc DELETE dữ liệu
  • Câu lệnh DELETE query:
-- DELETE dữ liệu trong table `shop_suppliers` với điều kiện id=10, id=12, id=13
DELETE FROM `shop_suppliers`
WHERE id=10
   OR id=12
   OR id=13;

Step 2: thực thi (Execute) câu lệnh SQL query trong HeidiSQL