Mệnh đề WHERE trong SQL

Mệnh đề WHERE trong SQL được sử dụng để chỉ định điều kiện khi lấy dữ liệu từ một bảng hoặc nối nhiều bảng với nhau. Nếu điều kiện được thỏa mãn thì nó chỉ trả về những giá trị cụ thể trong bảng.

Mệnh đề WHERE cũng được sử dụng để lọc các bản ghi và chỉ lấy những bản ghi phù hợp với yêu cầu hoặc thực sự cần thiết.

WHERE không đi một mình mà thường được sử dụng kết hợp với lệnh SELECT, lệnh UPDATE, lệnh DELETE và rất nhiều lệnh khác. Bạn sẽ được nhìn thấy ví dụ về sự kết hợp này trong những bài tiếp theo.

Cú pháp mệnh đề WHERE

Như đã nói ở trên, mệnh đề WHERE được dùng với các lệnh liên quan đến việc xử lý dữ liệu, vì vậy ta sẽ xem xét mệnh đề này trong lệnh SELECT, một sự kết hợp thường xuyên được nhìn thấy nhất trong SQL.

SELECT cot1, cot2,.... cotN 
FROM TEN_BANG
WHERE [DIEU_KIEN]

Bạn có thể chỉ định điều kiện bằng cách sử dụng các toán tử logic hoặc so sánh như >, <, LIKE, NOT,...

Các toán tử trong Mệnh đề WHERE

Các toán tử sau có thể được sử dụng trong mệnh đề WHERE:

Toán tửMô tả
=Bằng
>Lớn hơn
<Nhỏ hơn
>=Lớn hơn hoặc bằng
<=Nhỏ hơn hoặc bằng
<>Không công bằng. Lưu ý: Trong một số phiên bản SQL, toán tử này có thể được viết là !=
BETWEENGiữa một phạm vi nhất định
LIKETìm kiếm dựa trên mẫu tương tự
IN
Để chỉ định nhiều giá trị có thể có cho một cột

Ví dụ về mệnh đề WHERE

Ta tiếp tục sử dụng lại bảng NHANVIEN đã dùng trong các ví dụ trước:

+----+----------+-----+-----------+---------+
| ID |   TEN    | TUOI|  DIACHI   |   LUONG | 
+----+----------+-----+-----------+---------+ 
| 1  | Thanh    |  24 | Haiphong  | 2000.00 | 
| 2  | Loan     |  26 | Hanoi     | 1500.00 | 
| 3  | Nga      |  24 | Hanam     | 2000.00 | 
| 4  | Mạnh     |  29 | Hue       | 6500.00 | 
| 5  | Huy      |  28 | Hatinh    | 8500.00 | 
| 6  | Cao      |  23 | HCM       | 4500.00 | 
| 7  | Lam      |  29 | Hanoi     | 15000.00| 
+----+----------+-----+-----------+---------+

Ví dụ 1:

Giờ ta sẽ dùng WHERE kết hợp với SELECT để lọc ra những nhân viên có lương cao hơn 4500:

SQL> SELECT ID, TEN, LUONG 
FROM NHANVIEN
WHERE LUONG > 4500;

Không có lỗi nào xảy ra thì kết quả trả về sẽ là:

+----+----------+-----+-----------+---------+
| ID |   TEN    | TUOI|  DIACHI   |   LUONG | 
+----+----------+-----+-----------+---------+  
| 4  | Mạnh     |  29 | Hue       | 6500.00 | 
| 5  | Huy      |  28 | Hatinh    | 8500.00 |  
| 7  | Lam      |  29 | Hanoi     | 15000.00| 
+----+----------+-----+-----------+---------+

Ví dụ 2:

Bây giờ ta sẽ chỉ lấy ID, TEN, LUONG từ bảng NHANVIEN cho nhân viên có tên là Mạnh. Có một lưu ý cho bạn trong phần này là tất cả các chuỗi cần được đặt trong cặp dấu ' ', nhưng giá trị là số thì lại không cần cho vào dấu nháy đơn, giống như ví dụ 1.

SQL> SELECT ID, TEN, LUONG 
FROM NHANVIEN
WHERE TEN = 'Mạnh';

Kết quả trả về sẽ là:

+----+----------+-----+-----------+---------+
| ID |   TEN    | TUOI|  DIACHI   |   LUONG | 
+----+----------+-----+-----------+---------+  
| 4  | Mạnh     |  29 | Hue       | 6500.00 | 
+----+----------+-----+-----------+---------+

Vậy là bạn đã nắm được cách sử dụng mệnh đề WHERE và cách kết hợp SELECT với WHERE để chỉ lấy những dữ liệu phù hợp với điều kiện nhất định.

Thứ Tư, 27/07/2022 09:43
53 👨 11.440
0 Bình luận
Sắp xếp theo