Sử dụng CASE WHEN đúng cách. Tạo bảng demo58:
mysql> CREATE TABLE demo58 (
-> id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> first_name VARCHAR(20),
-> last_name VARCHAR(20)
-> );
Chèn dữ liệu:
mysql> INSERT INTO demo58(first_name,last_name) VALUES('John','Doe');
mysql> INSERT INTO demo58(first_name,last_name) VALUES('David','Smith');
mysql> INSERT INTO demo58(first_name,last_name) VALUES('John','Brown');
mysql> INSERT INTO demo58(first_name,last_name) VALUES('David','Miller');
Hiển thị dữ liệu:
mysql> SELECT * FROM demo58;
+----+------------+-----------+
| id | first_name | last_name |
+----+------------+-----------+
| 1 | John | Doe |
| 2 | David | Smith |
| 3 | John | Brown |
| 4 | David | Miller |
+----+------------+-----------+
Truy vấn CASE WHEN đúng cú pháp:
mysql> SELECT
-> CASE
-> WHEN (first_name = 'John') THEN 'Carol'
-> WHEN (last_name = 'Smith') THEN 'Doe'
-> END AS RESULT
-> FROM demo58;
Kết quả (hàng 4 không khớp điều kiện nào trả về NULL):
+--------+
| RESULT |
+--------+
| Carol |
| Doe |
| Carol |
| NULL |
+--------+