Web Cơ Bản

(IN) Truy xuất dữ liệu khi thỏa một trong số các giá trị

Từ khóa IN dùng để truy xuất dữ liệu khi giá trị của dữ liệumột trong số các giá trị được nêu.

Cú pháp

Từ khóa IN cho phép bạn xác định nhiều giá trị trong một mệnh đề WHERE.

SELECT *
FROM name_table
WHERE name_column IN (value1, value2, value3);

Một số ví dụ

Chúng ta có một bảng sinh_vien như sau:

(Bạn có thể bấm vào đây để download câu lệnh tạo bảng như bên dưới)

Full_name Gender Age City
Nguyen Thanh Nhan Nam 19 Can Tho
Pham Thu Huong Nu 20 Vinh Long
Nguyen Nhu Ngoc Nu 20 Soc Trang
Bui Thanh Bao Nam 19 Soc Trang
Le My Nhan Nu 22 Can Tho
Tan Thuc Bao Nam 35 An Giang
Trinh Giao Kim Nam 44 Bac Lieu
Ví dụ 1:

Truy xuất những sinh viên có tuổi là 19, 22, 35


SELECT *
FROM sinh_vien
WHERE Age IN (19, 22, 35);

Sau khi thực thi, MySQl trả về một bảng kết quả như dưới đây:

Full_name Gender Age City
Nguyen Thanh Nhan Nam 19 Can Tho
Bui Thanh Bao Nam 19 Soc Trang
Le My Nhan Nu 22 Can Tho
Tan Thuc Bao Nam 35 An Giang
Ví dụ 2:

Lấy họ tên và tỉnh thành của những sinh viên có tuổi KHÔNG là 19, 22


SELECT Full_name, City
FROM sinh_vien
WHERE Age NOT IN (19, 22);

Lưu ý: NOT IN có nghĩa là KHÔNG nằm trong số các giá trị được chỉ định.

Sau khi thực thi, MySQl trả về một bảng kết quả như dưới đây:

Full_name City
Pham Thu Huong Vinh Long
Nguyen Nhu Ngoc Soc Trang
Tan Thuc Bao An Giang
Trinh Giao Kim Bac Lieu
Ví dụ 3 (nâng cao):

Truy xuất họ tên, tuổi, tỉnh thành của những sinh viên có tuổi là 19, 20 và sống ở CanTho, Soc Trang


SELECT Full_name, Age, City
FROM sinh_vien
WHERE (Age IN (19, 20)) AND (City IN ("Can Tho","Soc Trang"));

Sau khi thực thi, MySQl trả về một bảng kết quả như dưới đây:

Full_name Age City
Nguyen Thanh Nhan 19 Can Tho
Nguyen Nhu Ngoc 20 Soc Trang
Bui Thanh Bao 19 Soc Trang