Các toán tử so sánh trong SQL Server
Khác trong SQL Server và <> trong SQL Server chỉ là một vài trong số những toán tử so sánh phổ biến. Dưới đây là những điều bạn cần biết về toán tử khác trong SQL Server.
SQL Server là kiến thức mà mọi lập trình viên đều cần biết. SQL Server là phần mềm đặc biệt do Microsoft phát triển dành cho hệ thống quản trị cơ sở dữ liệu. Nó được dùng chủ yếu để tạo, duy trì và triển khai hệ thống quản lý database quan hệ.
Hiện SQL Server được sử dụng rất phổ biến nhất là khi việc bảo mật dữ liệu trong ngành công nghệ thông tin ngày càng trở nên quan trọng. Mặt khác, nó còn được tối ưu để chạy database lớn tới tera byte, có thể phục vụ hàng ngàn người dùng cùng lúc.
Về cơ bản, học SQL Server không khó. Bạn cần bắt đầu từ những kiến thức cơ bản nhất. Quantrimang.com là nguồn học SQL Server đáng thử cho bạn. Trong bài học này, chúng ta hãy cùng nhau tìm hiểu về toán tử so sánh trong SQL Server nhé!
Trong SQL, bạn có sẵn tới 6 toán tử so sánh. Chúng giúp lập trình viên chạy truy vấn để triển khai các hoạt động khác nhau. Ví dụ, bạn sẽ dùng lệnh WHERE với các toán tử theo điều kiện để đạt được điều đó trong SQL. Ở bài viết này, hãy cùng nhau tìm hiểu chi tiết về các toán tử so sánh khi sử dụng SQL nhé!
Bài viết 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 trong SQL Server là gì?
Toán tử so sánh trong SQL Server được dùng để so sánh hai giá trị. Vì thế, bạn sẽ thấy chúng khi so sánh một biểu thức này với biểu thức khác. Kết quả của phép so sánh có thể là True, False hoặc Unknown (toán tử có một hoặc hai biểu thức NULL trả về kết quả UNKNOWN).
Lưu ý, bạn có thể dùng toán tử so sánh trên tất cả biểu thức, ngoại trừ biểu thức của loại văn bản, ảnh hoặc ntext.
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 |
Kiểu dữ liệu Boolean
Kết quả của toán tử so sánh có kiểu dữ liệu Boolean. Nó có 3 giá trị: TRUE, FALSE và UNKNOWN. Các biểu thức trả về một kiểu dữ liệu Boolean gọi là biểu thức Boolean.
Khác các kiểu dữ liệu khác trong SQL Server, một kiểu dữ liệu Boolean không thể được xem là kiểu dữ liệu của một cột hay biến trong bảng và không thể được trả về dưới dạng một tệp kết quả.
Khi SET ANSI_NULLS là ON, toán tử có một hoặc hai biểu thức NULL trả về UNKNOW. Khi SET ANSI_NULLS là OFF, quy tắc tương tự được áp dụng, ngoại trừ toán tử ngang bằng và không bằng. Khi SET ANSI_NULLS là OFF, những toán tử này sẽ là NULL, tương đương với mọi NULL khác và chỉ trả về TRUE hoặc FALSE.
Các biểu thức với kiểu dữ liệu Boolean được dùng trong mệnh đề WHERE để lọc các hàng áp ứng điều kiện tìm kiếm và các lệnh ngôn ngữ điều khiển luồng, chẳng hạn như IF và WHILE, ví dụ:
-- Uses AdventureWorks
DECLARE @MyProduct INT;
SET @MyProduct = 750;
IF (@MyProduct <> 0)
SELECT ProductID, Name, ProductNumber
FROM Production.Product
WHERE ProductID = @MyProduct;
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 nhanv
ien_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
Ngoài các toán tử so sánh, bạn cũng cần biết những toán tử logic sau trong SQL:
Toán tử | Mô tả |
ALL | TRUE nếu tất cả giá trị truy vấn phụ đều đáp ứng điều kiện |
AND | TRUE nếu tất cả điều kiện được phân tách bởi AND đều là TRUE |
ANY | TRUE nếu giá trị truy vấn phụ bất kỳ đều đáp ứng điều kiện |
BETWEEN | TRUE nếu toán hạng nằm trong phạm vi so sánh |
EXISTS | TRUE nếu truy vấn phụ trả về một hoặc nhiều bản ghi |
IN | TRUE nếu toán hạng bằng một trong số danh sách của các biểu thức |
LIKE | TRUE nếu toán hạng khớp với một mẫu |
NOT | Hiện một bản ghi nếu điều kiện là NOT TRUE |
OR | TRUE nếu điều kiện bất kỳ được phân tách bởi OR là TRUE |
SOME | TRUE nếu giá trị truy vấn phụ bất kỳ đáp ứng điều kiện |
Bài trước: Mệnh đề FROM trong SQL Server
Bài tiếp: Mệnh đề WHERE trong SQL Server
Bạn nên đọc
Cũ vẫn chất
-
5 cách tắt Update Windows 11, ngừng cập nhật Win 11
Hôm qua 14 -
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 -
Pantheon DTCL 7.5: Lên đồ, đội hình mạnh
Hôm qua -
Cách sửa file MP4 bị hỏng với thủ thuật đơn giản
Hôm qua -
Khắc phục lỗi mạng WiFi không hiển thị trên Windows 10
Hôm qua -
Black Friday là gì? Black Friday 2023 vào ngày nào?
Hôm qua -
Cách vô hiệu hóa BitLocker trong Windows 10
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 -
200+biệt danh cho người yêu hay và hài hước
Hôm qua 5