22/08/2018, 10:56

Điều kiện BETWEEN trong SQL Server

Trong SQL Server (Transact-SQL), điều kiện BETWEEN được dùng để lấy dữ liệu trong một khoảng, trong lệnh SELECT, INSERT, UPDATE hoặc DELETE. Cú pháp điều kiện BETWEEN bieu_thuc BETWEEN giatri1 AND giatri2 ; Tên biến hoặc giá trị biến bieu_thuc cột ...

Trong SQL Server (Transact-SQL), điều kiện BETWEEN được dùng để lấy dữ liệu trong một khoảng, trong lệnh SELECT, INSERT, UPDATE hoặc DELETE.

Cú pháp điều kiện BETWEEN

bieu_thuc BETWEEN giatri1 AND giatri2 ;

Tên biến hoặc giá trị biến

bieu_thuc

cột hoặc trường thông tin

giatri1 và giatri2

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 ý

Đ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 2 giá trị đầu cuối.

Ví dụ - giá trị số

SELECT * 
FROM nhanvien
WHERE nhanvien_id BETWEEN 25 AND 100;

Ví dụ nói 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 đây trả về 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à 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 lệnh SELECT dưới đây.

SELECT * 
FROM nhanvien
WHERE ngay_bat_dau >= ‘2014/05/01’
AND ngay_bat_dau <= ‘2014/05/31’;

Ví dụ - toán tử NOT

SELECT * 
FROM nhanvien
WHERE nhanvien_id NOT BETWEEN 2000 AND 2999;

Lệnh SELECT nói trên 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;

Bài trước: JOIN trong SQL Server

Bài sau: Lệnh INSERT trong SQL Server

0