Tìm hiểu về toán tử BETWEEN trong SQL Server
Toán tử BETWEEN trong SQL Server cho phép bạn kiểm tra xem liệu một biểu thức có nằm trong phạm vi của giá trị hay không. Có thể sử dụng toán tử này trong các lệnh SELECT, INSERT, UPDATE hoặc DELETE. Lệnh SQL BETWEEN sẽ trả về các bản ghi chứa biểu thức nằm trong phạm vi của giá trị 1 và 2.
Cú pháp điều kiện BETWEEN
bieu_thuc BETWEEN giatri1 AND giatri2;
Trong đó:
bieu_thuc
là cột hoặc trường thông tin.giatri1
vàgiatri2
là các giá trị tạo nên khoảng màbieu_thuc
sẽ đối chiếu, bao gồm cả 2 giá trị đầu cuối.
Lưu ý rằng điều kiện BETWEEN sẽ trả về tất cả các bản ghi mà bieu_thuc
nằm trong khoảng từ giatri1
tới giatri2
, bao gồm cả 2 giá trị đầu cuối.
Ví dụ với giá trị số
SELECT * FROM nhanvien WHERE nhanvien_id BETWEEN 25 AND 100;
Ví dụ trên sẽ trả về các hàng trong bảng nhanvien
nếu nhanvien_id
nằm giữa 25 và 100 (tính cả 25 và 100), tương đương với lệnh SELECT dưới đây.
SELECT * FROM nhanvien WHERE nhanvien_id >= 25 AND nhanvien_id = 100;
Ví dụ với ngày tháng
SELECT * FROM nhanvien WHERE ngay_bat_dau BETWEEN '2014/05/01' AND '2014/05/31';
Điều kiện BETWEEN trên sẽ trả về các bản ghi từ bảng nhanvien
với giá trị ngay_bat_dau
nằm giữa ngày 1 tháng 5 năm 2014 và ngày 31 tháng 5 năm 2014 (bao gồm cả 2 ngày đầu và cuối). Lệnh trên tương đương với lệnh SELECT dưới đây.
SELECT * FROM nhanvien WHERE ngay_bat_dau >= '2014/05/01' AND ngay_bat_dau = '2014/05/31';
NOT BETWEEN trong SQL là gì?
NOT BETWEEN là một toán tử trong ngôn ngữ truy vấn SQL, đối lập với toán tử BETWEEN. Nó cho phép lập trình viên truy cập những giá trị mà không nằm trong phạm vi được cung cấp.
Cú pháp sử dụng toán tử NOT BETWEEN trong SQL
SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name NOT BETWEEN Value_1 AND Value_2;
Ví dụ
SELECT * FROM nhanvien WHERE nhanvien_id NOT BETWEEN 2000 AND 2999;
Lệnh SELECT trên sẽ trả về các hàng từ bảng nhanvien
nếu nhanvien_id
không nằm giữa 2000 và 2999, bao gồm cả 2 giá trị đầu cuối, tương đương với lệnh dưới đây.
SELECT * FROM nhanvien WHERE nhanvien_id 2000 OR nhanvien_id > 2999;
Kết luận
Toán tử BETWEEN trong SQL Server giúp bạn dễ dàng truy cập những giá trị trong phạm vi cụ thể. Bạn có thể kết hợp nó với mệnh đề WHERE của INSERT, UPDATE, SELECT, và DELETE để thực hiện các tác vụ truy vấn dữ liệu.