Kỹ thuật
Sử dụng mệnh đề NOT IN() trong WHERE để loại bỏ các giá trị không mong muốn.
1. Tạo bảng
mysql> create table DemoTable (
Id int
);
Query OK, 0 rows affected (0.64 sec)
2. Chèn dữ liệu
mysql> insert into DemoTable values(1),(2),(3),(4),(5),(6);
3. Xem dữ liệu
mysql> select * from DemoTable;
+------+ | Id | +------+ | 1 | | 2 | | 3 | | 4 | | 5 | | 6 | +------+ 6 rows in set (0.00 sec)
4. Truy vấn loại trừ ID 1,4,6,3
mysql> select * from DemoTable where Id NOT IN(1,4,6,3);
Kết quả:
+------+ | Id | +------+ | 2 | | 5 | +------+ 2 rows in set (0.00 sec)
Lưu ý: Nếu cột cho phép NULL, NOT IN sẽ không khớp với NULL. Cần xử lý riêng nếu có NULL.