Mệnh đề WHERE
trong MySQL là một công cụ mạnh mẽ giúp bạn lọc kết quả của các truy vấn để chỉ lấy những bản ghi phù hợp với điều kiện mà bạn đã đặt ra. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng mệnh đề WHERE
một cách chi tiết và hiệu quả.
Cấu Trúc Của Mệnh Đề WHERE
Cấu trúc cơ bản của mệnh đề WHERE
trong câu lệnh SELECT
là như sau:
SELECT column1, column2, ...
FROM table_name
WHERE condition;
Ví Dụ Cụ Thể
Giả sử bạn có một bảng tên là products
, với các cột là product_id
, product_name
, category
, và price
. Để lấy thông tin các sản phẩm thuộc loại “Electronics”, bạn sẽ sử dụng mệnh đề WHERE
như sau:
SELECT *
FROM products
WHERE category = 'Electronics';
Sử Dụng Các Toán Tử So Sánh
Mệnh đề WHERE
hỗ trợ nhiều toán tử so sánh khác nhau giúp bạn lọc dữ liệu theo cách linh hoạt hơn:
=
: Bằng
!=
hoặc <>
: Khác
>
: Lớn hơn
<
: Nhỏ hơn
>=
: Lớn hơn hoặc bằng
<=
: Nhỏ hơn hoặc bằng
Ví Dụ Với Các Toán Tử So Sánh
Để tìm tất cả sản phẩm có giá lớn hơn 100, bạn có thể viết như sau:
SELECT *
FROM products
WHERE price > 100;
Sử Dụng Toán Tử Logic
Bạn cũng có thể kết hợp nhiều điều kiện trong mệnh đề WHERE
bằng các toán tử logic:
AND
: Tất cả các điều kiện đều phải đúng.
OR
: Ít nhất một trong các điều kiện phải đúng.
NOT
: Đảo ngược kết quả của điều kiện.
Ví Dụ Kết Hợp Các Toán Tử Logic
Để tìm tất cả sản phẩm thuộc loại “Electronics” và có giá lớn hơn 100, bạn có thể viết như sau:
SELECT *
FROM products
WHERE category = 'Electronics' AND price > 100;
Nếu bạn muốn tìm tất cả sản phẩm có giá nhỏ hơn 50 hoặc thuộc loại “Books”, câu lệnh sẽ như sau:
SELECT *
FROM products
WHERE price < 50 OR category = 'Books';
Sử Dụng Mệnh Đề LIKE
Mệnh đề LIKE
cho phép bạn tìm kiếm các mẫu trong chuỗi. Bạn có thể sử dụng ký tự đại diện %
để thay thế cho bất kỳ chuỗi nào và _
để thay thế cho một ký tự đơn.
Ví Dụ Với Mệnh Đề LIKE
Để tìm tất cả sản phẩm có tên bắt đầu bằng “Sam”, bạn có thể viết như sau:
SELECT *
FROM products
WHERE product_name LIKE 'Sam%';
Kết Hợp Nhiều Điều Kiện
Bạn có thể kết hợp các toán tử so sánh, toán tử logic, và mệnh đề LIKE
trong cùng một câu lệnh WHERE
. Ví dụ, để tìm sản phẩm có giá lớn hơn 50, thuộc loại “Electronics”, và tên sản phẩm chứa chữ “Phone”, bạn có thể viết như sau:
SELECT *
FROM products
WHERE price > 50
AND category = 'Electronics'
AND product_name LIKE '%Phone%';
Kết Luận
Mệnh đề WHERE
là một phần quan trọng trong câu lệnh SELECT
của MySQL, cho phép bạn lọc và truy vấn dữ liệu theo các điều kiện cụ thể. Việc sử dụng mệnh đề WHERE
một cách thành thạo sẽ giúp bạn truy vấn dữ liệu một cách hiệu quả hơn và nhận được kết quả chính xác theo mong muốn.