Truy xuất dữ liệu dựa theo nhiều điều kiện trong MySQL

 

Truy xuất dữ liệu dựa theo nhiều điều kiện trong MySQL

Nếu bạn muốn truy xuất dữ liệu với yêu cầu là dữ liệu phải thỏa nhiều hơn một điều điện, thì chúng ta dùng từ khóa AND.

Nếu bạn muốn truy xuất dữ liệu với yêu cầu là dữ liệu thỏa điều kiện này hoặc điều kiện khác, thì chúng ta dùng từ khóa OR.

Cú pháp

Cú pháp AND:

Hiển thị dữ liệu với yêu cầu là dữ liệu phải thỏa tất cả các điều kiện

SELECT *
FROM name_table
WHERE condition1 AND condition2 AND condition3;

Trong đó: condition là một biểu thức điều kiện(Ví dụ: Age > 22)

Cú pháp OR:

Hiển thị dữ liệu với yêu cầu là dữ liệu phải thỏa điều kiện này hoặc điều kiện khác

SELECT *
FROM name_table
WHERE condition1 OR condition2 OR condition3;

Trong đó: condition là một biểu thức điều kiện(Ví dụ: Age > 22)

Một số ví dụ

Ở bài học trước 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_nameGenderAgeCity
Nguyen Thanh NhanNam19Can Tho
Pham Thu HuongNu20Vinh Long
Nguyen Nhu NgocNu20Soc Trang
Bui Thanh BaoNam19Soc Trang
Le My NhanNu22Can Tho
Tan Thuc BaoNam35An Giang
Trinh Giao KimNam44Bac Lieu
Ví dụ 1

Truy xuất những sinh viên có giới tính là nam và tuổi nhỏ hơn hoặc bằng 35

SELECT *
FROM sinh_vien
WHERE Gender="Nam" AND Age<=35;

Trong đó: condition là một biểu thức điều kiện(Ví dụ: Age > 22)

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

Full_nameGenderAgeCity
Nguyen Thanh NhanNam19Can Tho
Bui Thanh BaoNam19Soc Trang
Tan Thuc BaoNam35An Giang
Ví dụ 2

Truy xuất họ tên và giới tính của những sinh viên có giới tính là nam và sống ở Can Tho

SELECT Full_name, Gender
FROM sinh_vien
WHERE Gender="Nam" AND City="Can Tho";

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

Full_nameGender
Nguyen Thanh NhanNam
Ví dụ 3

Truy xuất những sinh viên sống ở Can Tho hoặc Vinh Long hoặc Soc Trang

SELECT *
FROM sinh_vien
WHERE City="Can Tho" OR City="Vinh Long" OR City="Soc Trang";

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

Full_nameGenderAgeCity
Nguyen Thanh NhanNam19Can Tho
Pham Thu HuongNu20Vinh Long
Nguyen Nhu NgocNu20Soc Trang
Bui Thanh BaoNam19Soc Trang
Le My NhanNu22Can Tho
Ví dụ 4 (Phối hợp giữa AND và OR)

Truy xuất họ tên của những sinh viên nam sống ở Can Tho hoặc sinh viên nữ sống ở Soc Trang

SELECT Full_name
FROM sinh_vien
WHERE (Gender="Nam" AND City="Can Tho") OR (Gender="Nu" AND City="Soc Trang");

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

Full_name
Nguyen Thanh Nhan
Nguyen Nhu Ngoc

Post a Comment

Previous Post Next Post