Có, có thể kết hợp LIKE với OR để tìm kiếm nhiều mẫu. Tương đương với IN cho các giá trị chính xác.
Trường hợp 1: LIKE với OR
SELECT * FROM ten_bang WHERE cot LIKE 'mau1' OR cot LIKE 'mau2' OR cot LIKE 'mau3' ...;
Trường hợp 2: IN (cho giá trị chính xác)
SELECT * FROM ten_bang WHERE cot IN ('gt1', 'gt2', 'gt3', ...);
Ví dụ: tạo bảng LikeDemo:
mysql> CREATE TABLE LikeDemo (Id VARCHAR(20));
Chèn dữ liệu:
mysql> INSERT INTO LikeDemo VALUES
('John123'), ('Smith205'), ('Bob999'), ('Carol9091'), ('Johnson2222'), ('David2345');
Dữ liệu gốc:
mysql> SELECT * FROM LikeDemo;
+-------------+ | Id | +-------------+ | John123 | | Smith205 | | Bob999 | | Carol9091 | | Johnson2222 | | David2345 | +-------------+
Dùng LIKE + OR (hỗ trợ wildcard %):
mysql> SELECT * FROM LikeDemo WHERE Id LIKE 'John123%' OR Id LIKE 'Carol9091%' OR Id LIKE 'David2345%';
+-----------+ | Id | +-----------+ | John123 | | Carol9091 | | David2345 | +-----------+
Dùng IN (chỉ khớp chính xác):
mysql> SELECT * FROM LikeDemo WHERE Id IN ('John123', 'Carol9091', 'David2345');
Kết quả giống nhau. Dùng LIKE ... OR ... khi cần so khớp mẫu (wildcard), dùng IN khi so khớp chính xác.