Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Truy xuất nhiều giá trị với mệnh đề WHERE trong MySQL sử dụng OR

Trong MySQL, để truy xuất các bản ghi thỏa mãn một trong nhiều điều kiện, chúng ta sử dụng toán tử OR trong mệnh đề WHERE. Điều này cho phép lọc dữ liệu dựa trên nhiều tiêu chí khác nhau trên cùng một hoặc nhiều cột.

Ví dụ minh họa

Tạo bảng nhân viên:

mysql> CREATE TABLE DemoTable1421 (
    EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    EmployeeName VARCHAR(20),
    EmployeeSalary INT
);

Chèn dữ liệu mẫu:

mysql> INSERT INTO DemoTable1421 (EmployeeName, EmployeeSalary) VALUES ('Chris', 10000);
mysql> INSERT INTO DemoTable1421 (EmployeeName, EmployeeSalary) VALUES ('Bob', 15000);
mysql> INSERT INTO DemoTable1421 (EmployeeName, EmployeeSalary) VALUES ('David', 8000);
mysql> INSERT INTO DemoTable1421 (EmployeeName, EmployeeSalary) VALUES ('Carol', 8500);
mysql> INSERT INTO DemoTable1421 (EmployeeName, EmployeeSalary) VALUES ('Mike', 14500);

Xem toàn bộ dữ liệu:

mysql> SELECT * FROM DemoTable1421;
+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
|          1 | Chris        |          10000 |
|          2 | Bob          |          15000 |
|          3 | David        |           8000 |
|          4 | Carol        |           8500 |
|          5 | Mike         |          14500 |
+------------+--------------+----------------+

Truy vấn với nhiều điều kiện OR

Lấy các nhân viên có ID = 1 HOẶC tên là 'David' HOẶC lương = 14500:

mysql> SELECT * FROM DemoTable1421 
    WHERE EmployeeId = 1 
       OR EmployeeName = 'David' 
       OR EmployeeSalary = 14500;

Kết quả:

+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
|          1 | Chris        |          10000 |
|          3 | David        |           8000 |
|          5 | Mike         |          14500 |
+------------+--------------+----------------+

Lưu ý quan trọng

  • Toán tử OR trả về bản ghi nếu ít nhất một điều kiện đúng.
  • Có thể kết hợp OR với AND cho logic phức tạp hơn (nhớ dùng ngoặc đơn để nhóm điều kiện).
  • Với danh sách giá trị lớn, cân nhắc dùng IN() thay cho nhiều OR liên tiếp để code gọn hơn.