Computer >> Máy Tính >  >> Lập trình >> MySQL

Câu lệnh SELECT IF trong MySQL với OR?

Bạn có thể sử dụng câu lệnh SELECT IF với OR. Để hiểu lựa chọn với HOẶC, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

mysql> create table EmployeeInformation
   -> (
   -> EmployeeId int,
   -> EmployeeName varchar(100),
   -> EmployeeStatus varchar(100)
   -> );
Query OK, 0 rows affected (0.68 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau -

mysql> insert into EmployeeInformation values(1,'Sam','FullTime');
Query OK, 1 row affected (0.23 sec)

mysql> insert into EmployeeInformation values(2,'Mike','PartTime');
Query OK, 1 row affected (0.14 sec)

mysql> insert into EmployeeInformation values(3,'Bob','Intern');
Query OK, 1 row affected (0.14 sec)

mysql> insert into EmployeeInformation values(4,'Carol','FullTime');
Query OK, 1 row affected (0.16 sec)

mysql> insert into EmployeeInformation values(5,'John','FullTime');
Query OK, 1 row affected (0.19 sec)

mysql> insert into EmployeeInformation values(6,'Johnson','PartTime');
Query OK, 1 row affected (0.19 sec)

mysql> insert into EmployeeInformation values(7,'Maria','Intern');
Query OK, 1 row affected (0.12 sec)

Bây giờ chúng ta hãy hiển thị tất cả các bản ghi từ bảng bằng lệnh select. Truy vấn như sau -

mysql> select *from EmployeeInformation;

Đầu ra

+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeStatus |
+------------+--------------+----------------+
|          1 | Sam          | FullTime       |
|          2 | Mike         | PartTime       |
|          3 | Bob          | Intern         |
|          4 | Carol        | FullTime       |
|          5 | John         | FullTime       |
|          6 | Johnson      | PartTime       |
|          7 | Maria        | Intern         |
+------------+--------------+----------------+
7 rows in set (0.00 sec)

Đây là truy vấn để thực hiện câu lệnh SELECT IF với OR. Trong truy vấn dưới đây, bạn sẽ chỉ nhận được EmployeeName có EmployeeStatus FullTime và Intern, nếu không, bạn sẽ nhận được trạng thái của nhân viên.

Truy vấn như sau -

mysql> select if(EmployeeStatus='FullTime' or
EmployeeStatus='Intern',EmployeeName,EmployeeStatus) as Status from
EmployeeInformation;

Đầu ra

+----------+
| Status   |
+----------+
| Sam      |
| PartTime |
| Bob      |
| Carol    |
| John     |
| PartTime |
| Maria    |
+----------+
7 rows in set (0.00 sec)