[SQL Server] Toán tử BETWEEN và NOT BETWEEN trong SQL

oán tử BETWEEN và NOT BETWEEN trong SQL


Toán tử BETWEEN dùng để kiểm tra một giá trị có nằm trong một khoảng giá trị hay không, nó có thể được sử dụng với kiểu number, date, text. Đối với number và text thì sẽ sắp xếp dựa vào thứ tự của bảng mã ASCII.

1. Cú pháp toán tử BETWEEN

Bạn hãy xem cú pháp sau:
1
2
3
SELECT column_name_list
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
Trong đó:
  • column_name là cột bạn muốn kiểm tra
  • value1 và value2 là giới hạn giá trị, tức là cận trên và cận dưới.
Ví dụ 1: Lấy danh sách sinh viên có tuổi trong khoảng từ 20 đến 25.
1
2
3
SELECT *
FROM STUDENTS
WHERE AGE BETWEEN 20 AND 25
Ví dụ 2: Lấy danh sách đơn hàng đăng ký từ ngày 20/11/2017 đến ngày 22/12/2017
1
2
3
SELECT *
FROM ORDERS
WHERE ADD_DATE BETWEEN "20/11/2017" AND "22/12/2017"

2. Toán tử NOT BETWEEN

Với toán tử BETWEEN là kiểm tra tồn tại trong khoảng thì NOT BETWEEN sẽ kiểm tra giá trị không nằm trong khoảng, tức là nó phủ định.
Cú pháp như sau:
1
2
3
SELECT column_name_list
FROM table_name
WHERE column_name NOT BETWEEN value1 AND value2;
Ví dụ: Lấy tất cả khách hàng trừ những khách hàng có tuổi không nằm trong khoảng 20 đến 30
1
2
3
SELECT *
FROM CUSTOMERS
WHERE AGE NOT BETWEEN 20 AND 30

3. Toán tử thay thế

Trường hợp bài toán bắt buộc tìm trong khoảng thì bạn cũng có thể sử dụng toán tử AND thay thế cho BETWEEN và OR thay thế cho NOT BETWEEN. Như các ví dụ ở trên thì mình sẽ viết lại như sau:
AND thay thế BETWEEN
1
2
3
SELECT *
FROM STUDENTS
WHERE AGE >= 20 AND AGE <= 25
OR thay thế NOT BEtWEEN
1
2
3
SELECT *
FROM CUSTOMERS
WHERE AGE < 20 OR AGE > 30
Trên là cách sử dụng toán tử so sánh trong khoảng, nó rất hữu ích và giúp ta xây dựng câu SQL trông sạch hơn.

Nhận xét

Bài đăng phổ biến từ blog này

[SQL Server] Toán tử LIKE và NOT LIKE trong SQL

[Javascript] Object constructor

[SQL Server] Lọc dữ liệu trùng với DISTINCT trong SQL