Toán tử AND, OR và NOT trong SQL
Toán tử AND và OR được sử dụng để kết hợp nhiều điều kiện nhằm thu hẹp dữ liệu trong câu lệnh SQL. Hai toán tử này được gọi là toán tử liên hợp trong SQL. AND và OR cho phép tạo nhiều phép so sánh cùng với các toán tử khác trong một lệnh SQL.
Trong bài SQL này, chúng ta sẽ đi tìm hiểu toán tử AND/OR và NOT - cách sử dụng chúng, cũng như các ví dụ cụ thể.
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:
- Toán tử
AND
hiển thị một bản ghi nếu tất cả các điều kiện được phân tách bằng AND đều TRUE (Đúng). - Toán tử
OR
hiển thị một bản ghi nếu bất kỳ điều kiện nào được phân tách bởi OR là TRUE (Đúng).
Toán tử NOT
hiển thị một bản ghi nếu (các) điều kiện KHÔNG ĐÚNG.
Toán tử AND trong SQL
AND cho phép sử dụng nhiều điều kiện trong mệnh đề WHERE của câu lệnh SQL. Như ở bài trước bạn đã thấy, chúng ta chỉ có thể sử dụng một điều kiện trong WHERE, khi kết hợp với SELECT. Nhưng nếu có AND bạn có thể thêm vào các điều kiện khác để đảm bảo lấy được dữ liệu chuẩn xác hơn. Dữ liệu lấy ra phải thỏa mãn cùng lúc tất cả các điều kiện có trong mệnh đề WHERE.
Cú pháp của AND trong WHERE:
SELECT cot1, cot2, cotN
FROM TEN_BANG
WHERE [DIEU_KIEN1] AND [DIEU_KIEN2]...AND [DIEU_KIENN];
Ví dụ về AND:
Trong ví dụ này ta sẽ lấy thông tin nhân viên từ bảng NHANVIEN, lọc những nhân viên có lương cao hơn 2000 và tuổi ít hơn 29.
Đây là bảng NHANVIEN:
Câu lệnh sẽ như sau:
SQL> SELECT *
FROM NHANVIEN
WHERE LUONG > 2000 AND TUOI < 29;
Kết quả trả về sẽ như thế này:
Toán tử OR trong SQL
Toán tử OR được sử dụng để kết hợp nhiều điều kiện trong mệnh đề WHERE của lệnh SQL. Khi sử dụng OR trong WHERE kết hợp với SELECT thì dữ liệu lấy ra chỉ cần thỏa mãn một trong các điều kiện được liệt kê. Bạn có nhận thấy sự khác biệt giữa OR và AND không?
Cú pháp của OR trong WHERE:
SELECT cot1, cot2, cotN
FROM TEN_BANG
WHERE [DIEU_KIEN1] OR [DIEU_KIEN2]...OR [DIEU_KIENN]
Bạn có thể kết hợp N điều kiện nhờ sử dụng OR, và chỉ cần một trong số N điều kiện này đúng thì dữ liệu sẽ được lấy ra.
Ví dụ về OR:
Ta sẽ lấy thông tin nhân viên từ bảng NHANVIEN dưới đây, với điều kiện là LUONG lớn hơn 6500 và tuổi ít hơn 24.
Câu lệnh sẽ là:
SQL> SELECT *
FROM NHANVIEN
WHERE LUONG > 6500 OR age < 24;
Khi thực hiện lệnh trên, bất ký bản ghi nào thỏa mãn điều kiện lương cao hơn 6500 hoặc tuổi nhỏ hơn 24 đều sẽ được trả về trong bảng kết quả, giống như dưới đây:
Toán tử NOT trong SQL
Toán tử NOT được sử dụng để phủ định các điều kiện đứng đằng sau nó trong mệnh đề WHERE. Khi sử dụng NOT trong lệnh SELECT kết hợp mệnh đề WHERE, bạn sẽ lấy được dữ các dữ liệu KHÔNG thỏa mãn điều kiện.
Cú pháp của NOT trong WHERE:
SELECT cot1, cot2,... cotN
FROM TEN_BANG
WHERE NOT [DIEU_KIEN]
Bạn có thể kết hợp toán tử NOT cùng AND/OR trong những trường hợp cần thiết.
Ví dụ về NOT:
Ta sẽ lấy thông tin nhân viên từ bảng NHANVIEN dưới đây, với điều kiện là LUONG không nhỏ hơn 4000 và tuổi lớn hơn hoặc bằng 24.
Câu lệnh sẽ là:
SQL> SELECT *
FROM NHANVIEN
WHERE NOT LUONG < 4000 AND age >= 24;
Sau khi thực hiện câu lệnh, bất kì người nào có lương cao hơn 4000 và tuổi từ 24 trở lên sẽ được lấy ra, kết quả như sau:
+----+----------+-----+-----------+---------+
| ID | TEN | TUOI| DIACHI | LUONG |
+----+----------+-----+-----------+---------+
| 4 | Mạnh | 29 | Hue | 6500.00 |
| 5 | Huy | 28 | Hatinh | 8500.00 |
+----+----------+-----+-----------+---------+
Đến đây, bạn đã tự tin để sử dụng toán tử AND, OR và NOT trong mệnh đề WHERE chưa? Cũng khá đơn giản thôi phải không nào? Trong bài tới, chúng ta sẽ tìm hiểu về một lệnh rất quan trọng trong SQL, đó là lệnh UPDATE.
Bạn nên đọc
Cũ vẫn chất
-
Cách sửa file MP4 bị hỏng với thủ thuật đơn giản
Hôm qua -
Cách khởi động và dừng các dịch vụ trong MS SQL Server
Hôm qua -
Cách ẩn tin nhắn Telegram không cần xóa
Hôm qua -
Cách viết số mũ trong Excel, viết chỉ số trên, chỉ số dưới trong Excel
Hôm qua -
Black Friday là gì? Black Friday 2023 vào ngày nào?
Hôm qua -
30 lời chúc sinh nhật chồng yêu ý nghĩa và ngọt ngào
Hôm qua 1 -
5 cách tắt Update Windows 11, ngừng cập nhật Win 11
Hôm qua 14 -
200+biệt danh cho người yêu hay và hài hước
Hôm qua 5 -
Đấu Trường Chân Lý Mobile (TFT Mobile)
-
Khắc phục lỗi mạng WiFi không hiển thị trên Windows 10
Hôm qua