Vấn đề
Cột ClientId kiểu VARCHAR có thể chứa chuỗi rỗng ('') hoặc chuỗi '0'. Cần lọc cả hai giá trị này trong một điều kiện.
1. Tạo bảng
mysql> create table DemoTable (
ClientId varchar(40)
);
Query OK, 0 rows affected (1.01 sec)
2. Chèn dữ liệu
mysql> insert into DemoTable values('CLI-01'),('0'),('CLI-02'),('CLI-00'),(''),('CLI-98');
3. Xem dữ liệu
mysql> select * from DemoTable;
+----------+ | ClientId | +----------+ | CLI-01 | | 0 | | CLI-02 | | CLI-00 | | | | CLI-98 | +----------+ 6 rows in set (0.00 sec)
4. Truy vấn lọc cả '' và '0'
mysql> select * from DemoTable where ClientId IN('0','');
Kết quả:
+----------+ | ClientId | +----------+ | 0 | | | +----------+ 2 rows in set (0.00 sec)
Mẹo: IN() gọn nhẹ hơn ClientId = '0' OR ClientId = ''.