Toán tử AND và OR trong SQL

Toán tử And và Or được sử dụng để lọc các bản ghi dựa trên nhiều hơn một điều kiện.

Các toán tử AND và OR trong SQL

Toán tử AND hiển thị một bản ghi nếu cả hai điều kiện đầu tiền VÀ thứ hai đều đúng.

Toán tử OR hiển thị một bản ghi nếu chỉ cần một trong hai điều kiện là đúng.

Cơ sở dữ liệu demo

Trong khoá này chúng ta sẽ sử dụng cơ sở dữ liệu mẫu Northwind được nhiều người biết đến.

Dưới đây là một lựa chọn từ bảng “Customers”:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

Ví dụ về toán tử AND

Câu lệnh SQL dưới đây lựa chọn tất cả khách hàng từ quốc gia Đức – “Germany” VÀ thành phố là “Berlin”, trong bảng “Customers”:

Ví dụ

SELECT * FROM Customers
WHERE Country='Germany'
AND City='Berlin';

Kết quả chỉ có một bản ghi thoả mãn cả hai tiếu chí:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany

Ví dụ về toán tử OR

Câu lệnh SQL dưới đây lựa chọn tất cả các khác hàng từ thành phố “Berlen” hoặc “München”, trong bảng “Customers”:

Ví dụ

SELECT * FROM Customers
WHERE City='Berlin'
OR City='München';

Kết quả có hai bản ghi thoả mãn:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
25FrankenversandPeter FrankenBerliner Platz 43München80805Germany

Kết hợp AND & OR

Bạn có thể kết hợp AND và OR (sử dụng dấu ngoặc đơn để tạo biểu thức phức tạp).

Câu lệnh SQL dưới đây lựa chọn tất cả khách hàng từ quốc gia Đức – “Germany” VÀ thành phố phải là “Berlin” HOẶC “München”, trong bảng “Customers”:

Ví dụ

SELECT * FROM Customers
WHERE Country='Germany'
AND (City='Berlin' OR City='München');

Kết quả:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
25FrankenversandPeter FrankenBerliner Platz 43München80805Germany

Leave a Comment