Toán tử IN trong SQL được sử dụng để kiểm tra xem một giá trị có nằm trong một tập hợp các giá trị được chỉ định hay không.
Cú pháp:
SELECT column_name(s) FROM table_name WHERE column_name IN (value1, value2, ...);
Giải thích:
- column_name: Tên cột chứa dữ liệu muốn kiểm tra.
- IN: Toán tử so sánh.
- <value1>, <value2>, …, <valueN>: Tập hợp các giá trị để so sánh.
Ví dụ:
Tìm kiếm tất cả khách hàng có quốc gia là Việt Nam, Hoa Kỳ hoặc Canada:
SELECT * FROM Customers WHERE Country IN ('Việt Nam', 'Hoa Kỳ', 'Canada');
Tìm kiếm tất cả sản phẩm có giá bán từ 100.000 đến 200.000:
SELECT * FROM Products WHERE Price IN (100000, 150000, 200000);
Tìm kiếm tất cả nhân viên có mã số nhân viên nằm trong danh sách được lưu trữ trong biến @employeeIDs:
DECLARE @employeeIDs VARCHAR(MAX) = '1,2,3,4,5'; SELECT * FROM Employees WHERE EmployeeID IN (@employeeIDs);
Trả về thông tin KH không thuộc quốc gia ‘Germany’, ‘France’, or ‘UK’:
SELECT * FROM Customers WHERE Country NOT IN ('Germany', 'France', 'UK');
Trả về thông tin trong một mệnh đề Select khác:
SELECT * FROM Customers WHERE CustomerID IN (SELECT CustomerID FROM Orders);
Trả về thông tin khi không thuộc trong kết quả của một câu truy vấn khác:
SELECT * FROM Customers WHERE CustomerID NOT IN (SELECT CustomerID FROM Orders);
Lưu ý:
- Toán tử IN phân biệt chữ hoa chữ thường.
- Bạn có thể sử dụng toán operator NOT IN để kiểm tra xem một giá trị không nằm trong một tập hợp các giá trị được chỉ định.