Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Xóa nhiều bản ghi chọn lọc bằng câu lệnh DELETE trong MySQL

Kỹ thuật

Sử dụng mệnh đề IN() trong WHERE của câu lệnh DELETE để xóa nhiều bản ghi theo danh sách giá trị.

1. Tạo bảng

mysql> create table DemoTable (
    ClientId varchar(40),
    ClientName varchar(50)
);
Query OK, 0 rows affected (0.62 sec)

2. Chèn dữ liệu

mysql> insert into DemoTable values('CLI-101','Chris');
mysql> insert into DemoTable values('CLI-110','Adam');
mysql> insert into DemoTable values('CLI-220','Mike');
mysql> insert into DemoTable values('CLI-120','Bob');
mysql> insert into DemoTable values('CLI-240','Sam');

3. Xem dữ liệu

mysql> select * from DemoTable;
+----------+------------+
| ClientId | ClientName |
+----------+------------+
| CLI-101  | Chris      |
| CLI-110  | Adam       |
| CLI-220  | Mike       |
| CLI-120  | Bob        |
| CLI-240  | Sam        |
+----------+------------+
5 rows in set (0.00 sec)

4. Xóa các ID chỉ định

mysql> delete from DemoTable where ClientId IN('CLI-101','CLI-220','CLI-240');
Query OK, 3 rows affected (0.10 sec)

5. Kiểm tra lại

mysql> select * from DemoTable;
+----------+------------+
| ClientId | ClientName |
+----------+------------+
| CLI-110  | Adam       |
| CLI-120  | Bob        |
+----------+------------+
2 rows in set (0.00 sec)

Lưu ý: Luôn sao lưu dữ liệu trước khi chạy DELETE không có WHERE hoặc với danh sách lớn.