Các toán tử so sánh trong SQL Server
Bài viết này sẽ đưa ra các toán tử so sánh được dùng để kiểm tra tính cân bằng cùng với các toán tử nâng cao hơn trong SQL Server. Bạn đọc có thể tham khảo thêm bài viết Toán tử trong SQL. Toán tử so sánh được dùng trong mệnh đề WHERE để xác định lựa chọn bản ...
Bài viết này sẽ đưa ra các toán tử so sánh được dùng để kiểm tra tính cân bằng cùng với các toán tử nâng cao hơn trong SQL Server. Bạn đọc có thể tham khảo thêm bài viết Toán tử trong SQL.
Toán tử so sánh được dùng trong mệnh đề WHERE để xác định lựa chọn bản ghi nào. Đây là danh sách các toán tử so sánh bạn có thể dùng trong SQL Server (T-SQL).
Toán tử | Mô tả |
= | Ngang bằng |
<> | Không bằng |
!= | Không bằng |
> | Lớn hơn |
>= | Lớn hơn hoặc bằng |
< | Nhỏ hơn |
<= | Nhỏ hơn hoặc bằng |
!> | Không lớn hơn |
!< | Không nhỏ hơn |
IN () | Phù hợp với giá trị trong danh sách |
NOT | Không đáp ứng điều kiện |
BETWEEN | Nằm trong một khoảng (gồm cả giá trị đầu và cuối) |
IS NULL | Giá trị NULL |
IS NOT NULL | Giá trị không NULL |
LIKE | Kết hợp mẫu với % và _ |
EXISTS | Điều kiện được đáp ứng nếu truy vấn nội bộ (subquery) trả lại ít nhất 1 hàng |
Còn có nhiều toán tử so sánh trong SQL Server và Transact-SQL. Dưới đây là cách dùng một số toán tử thông dụng.
Ví dụ - Toán tử ngang hàng
SELECT *
FROM nhanvien
WHERE ten = ‘Jane’;
Ở ví dụ này, lệnh SELECT sẽ trả lại kết quả là các hàng từ bảng nhanvien với các nhân viên có tên là Jane.
Ví dụ - Toán tử không ngang hàng
Trong SQL Server, có thể dùng <> hoặc != để kiểm tra tính không ngang hàng trong truy vấn.
SELECT *
FROM nhanvien
WHERE ten <> ‘Jane’;
Lệnh SELECT trên đây sẽ trả về các hàng trong bảng nhanvien có tên không phải là Jane. Lệnh trên có thể viết cách khác như sau. Cả 2 truy vấn đều cho ra cùng 1 bộ kết quả.
SELECT *
FROM nhanvien
WHERE ten != ‘Jane’;
Ví dụ - Toán tử lớn hơn
SELECT *
FROM nhanvien
WHERE nhanvien_id > 3000;
Kết quả tra về của lệnh SELECT nói trên là các hàng trong bảng nhanvien mà ID của nhân viên lớn hơn 3000, ID nhân viên bằng 3000 sẽ không nằm trong kết quả.
Ví dụ - Toán tử lớn hơn hoặc bằng
SELECT *
FROM nhanvien
WHERE nhanvien_id >= 3000;
Ví dụ trên sẽ trả về các hàng có ID nhân viên lớn hơn hoặc bằng 3000 trong bảng nhanvien.
Ví dụ - Toán tử nhỏ hơn
SELECT *
FROM nhanvien
WHERE nhanvien_id < 500;
Tương tự, kết quả của lệnh này là các hàng trong băng nhanvien có ID của nhân viên nhỏ hơn 500, không bao gồm ID 500.
Ví dụ - Toán tử nhỏ hơn hoặc bằng
SELECT *
FROM nhanvien
WHERE nhanvien_id <= 500;
Kết quả của lệnh này là các hàng trong bảng nhanvien có nhanvien_id nhỏ hơn hoặc bằng 500.
Ví dụ - Toán tử nâng cao hay toán tử logic
Các toán tử nâng cao dưới đây sẽ có từng bài hướng dẫn cụ thể cho chúng.
IN ()
NOT
BETWEEN
IS NULL
IS NOT NULL
LIKE
EXISTS
Bài trước: Mệnh đề FROM trong SQL Server
Bài tiếp: Mệnh đề WHERE trong SQL Server