Bài MySQL 18: Cách sử dụng toán tử between trong MySQL

Xin chào các bạn, trong bài học ngày hôm nay chúng ta sẽ cùng nhau tìm hiểu về toán tử between trong MySQL để xác định xem một giá trị có nằm trong phạm vi giá trị hay không.

Giới thiệu

Toán tử between trong MySQL cho phép bạn chỉ định một phạm vi để kiểm tra. Bạn thường sử dụng toán tử BETWEEN trong câu lệnh WHERE của câu lệnh SELECTUPDATE hoặc DELETE.

Cú pháp:

toán tử between trong mysql

Expr là biểu thức để kiểm tra phạm vi được xác định bởi begin_expr và end_expr.

Tất cả ba biểu thức: exprbegin_expr và end_expr phải có cùng một kiểu dữ liệu.

Trong khoa học máy tính và lập trình máy tính, một kiểu dữ liệu hay đơn giản type là một cách phân loại dữ liệu cho trình biên dịch hoặc thông dịch hiểu các lập trình viên muốn sử dụng dữ liệu. Hầu hết các ngôn ngữ hỗ trợ nhiều kiểu dữ liệu khác nhau, như số thực, số nguyên hay Boolean.

Toán tử BETWEEN trả về true nếu giá trị của expr lớn hơn hoặc bằng (> =) giá trị của begin_expr và nhỏ hơn hoặc bằng (<=) giá trị của end_expr nếu không nó trả về 0.

Hàm NOT BETWEEN trả về true nếu giá trị của expr nhỏ hơn (<) giá trị của begin_expr hoặc lớn hơn giá trị của giá trị của end_expr nếu không nó trả về 0.

Nếu bất kỳ biểu thức nào là NULL, toán tử BETWEEN trả về một giá trị NULL.

Ví dụ về toán tử BETWEEN trong mysql

Mình sẽ sử dụng toán tử BETWEEN trong bảng employees.

Giả sử bạn muốn tìm các nhân viên có mức lương nằm trong phạm vi 150.000 đến 200.000, bạn có thể sử dụng toán tử BETWEEN như sau:

between mysql

Bạn có thể đạt được kết quả tương tự bằng cách sử dụng toán tử lớn hơn hoặc bằng (> =) và nhỏ hơn hoặc bằng (<=) như sau:

Để tìm nhân viên có mức lương không nằm trong khoảng từ 150.000 đến 200.000, các bạn kết hợp toán tử BETWEEN với toán tử NOT như sau:

mysql between

Bạn có thể viết lại truy vấn ở trên bằng cách sử dụng toán tử nhỏ hơn (>), lớn hơn (>) và logic (OR) như sau:

Toán tử BETWEEN trong mysql với kiểu dữ liệu ngày giờ

Khi bạn sử dụng toán tử BETWEEN trong mysql với các giá trị ngày tháng, để có được kết quả tốt nhất, bạn nên sử dụng kiểu cast để chuyển đổi từ kiểu column hoặc biểu thức sang DATE.

Ví dụ, để có được các đơn đặt hàng có ngày bắt buộc là từ 01/01/2003 đến 31/01/2003, bạn sử dụng truy vấn sau:

Kết luận

Như vậy trong bài học ngày hôm nay mình đã hướng dẫn các bạn sử dụng toán tử Between trong mysql để xác định xem một giá trị có nằm trong phạm vi giá trị hay không. Trong bài học tiếp theo chúng ta sẽ tìm hiểu về toán tử LIKE trong MySQL.

Chúc các bạn học tập tốt!