Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> SQL

SQL BETWEEN: Hướng dẫn đầy đủ

Từ khóa SQL BETWEEN truy xuất giá trị nằm trong một tập giá trị cụ thể. Thường dùng để lấy giá trị giữa hai ngày hoặc hai số. Từ khóa này dùng trong mệnh đề WHERE. Cú pháp: "BETWEEN min AND max;".

Thường bạn muốn thu thập thông tin từ cơ sở dữ liệu tồn tại giữa hai giá trị. Bạn có thể dùng toán tử BETWEEN để làm điều này.

Từ khóa SQL BETWEEN cho phép định nghĩa phạm vi cho truy vấn và truy xuất tất cả giá trị trong phạm vi đó. Ví dụ: có cơ sở dữ liệu lương nhân viên. Dùng BETWEEN tạo danh sách nhân viên thu nhập giữa $50,000 và $60,000.

Trong hướng dẫn này, chúng ta xem cách dùng BETWEEN trong SQL và thảo luận một số ứng dụng thực tế.

Từ khóa SQL BETWEEN

Từ khóa SQL BETWEEN cho phép chọn giá trị trong một phạm vi cụ thể. Từ khóa BETWEEN được chỉ định trong phần WHERE của câu lệnh SQL. Bạn cần dùng từ khóa AND để chỉ định hai giá trị trong phạm vi.

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

SELECT ten_cot FROM ten_bang WHERE ten_cot BETWEEN gia_tri_toi_thieu AND gia_tri_toi_da;

Như bạn thấy, từ khóa BETWEEN nằm sau câu lệnh WHERE. Dùng từ khóa AND phân tách giá trị tối thiểu và tối đa.

Bạn có thể truy xuất giá trị giữa hai ngày hoặc hai số với BETWEEN. Ví dụ: muốn tìm ai được tuyển giữa hai ngày. Có thể làm với BETWEEN.

BETWEEN cũng hoạt động trên chuỗi (strings). Trong trường hợp này, BETWEEN tìm chuỗi nằm giữa hai giá trị so sánh. Ví dụ: tìm tất cả học sinh điểm giữa A và C.

Từ khóa này hoạt động trên câu lệnh SELECT, INSERT, UPDATE và DELETE.

Ví dụ SQL BETWEEN

Xem bảng nhân viên sau:

namesalary
Geoff38000
Mike32000
Emma50000
Jonah50000
Luke32000
Alexis33000
Hannah30000

Bảng có 2 cột, 7 hàng. Tạo bảng bằng SQL CREATE TABLE và SQL INSERT.

Giả sử muốn lấy tên và lương tất cả nhân viên thu nhập giữa $35,000 và $55,000/năm. Dùng truy vấn:

SELECT name, salary FROM employees WHERE salary BETWEEN 35000 AND 55000;

SQL server trả về:

namesalary
Geoff38000
Emma50000
Jonah50000

(3 hàng — lưu ý: Mike 32000 không nằm trong khoảng, bảng gốc có lỗi hiển thị Mike, đã sửa)

Bạn cũng có thể dùng toán tử BETWEEN tìm thông tin giữa các ngày cụ thể.

Giả sử muốn lấy tên và ngày tuyển dụng nhân viên tuyển giữa 01/01/2009 và 31/12/2011. Cũng dùng BETWEEN:

SELECT name, hired_date FROM employees 
WHERE hired_date BETWEEN CAST('2009-01-01' AS DATE) AND CAST('2011-12-31' AS DATE);

Kết quả:

namehire date
Luke2009-12-03
Emma2010-03-19
Mike2010-03-19
Hannah2011-09-30
Jonah2010-07-23

(5 hàng)

Ví dụ BETWEEN với chuỗi. Muốn tìm tên nhân viên bắt đầu bằng bất kỳ chữ cái giữa A và F trong bảng chữ cái. Dùng BETWEEN:

SELECT name FROM employees WHERE name BETWEEN 'A' AND 'F';

Kết quả:

name
Emma
Alexis

(2 hàng)

Kết luận

Toán tử SQL BETWEEN truy xuất bản ghi có giá trị cột nằm trong phạm vi cụ thể. Bạn có thể dùng toán tử này tìm giá trị giữa hai chuỗi, ngày và số.

Làm thử thách: viết truy vấn lấy ID tất cả nhân viên trong khoảng 300 và 400. Bảng tên employees, cột ID là id.

Bạn muốn tìm hiểu thêm về SQL? Xem hướng dẫn How to Learn SQL. Bạn sẽ tìm thấy danh sách khóa học hàng đầu và tài nguyên học tập giúp xây dựng kiến thức ngôn ngữ cơ sở dữ liệu SQL.