án tử BETWEEN và NOT BETWEEN trong SQL - Ngôn ngữ truy vấn T-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: ...
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:
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 travalue1
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.
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
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:
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
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:
SELECT * FROM STUDENTS WHERE AGE >= 20 AND AGE <= 25
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.