CASE – Biểu thức
Nội dung
1. Biểu thức CASE dạng đơn giản
1.1 Mô tả
- Giá_trị_1, Giá_trị_2: các giá trị cụ thể để so sánh bằng (=) với Biểu_thức.
- Biểu_thức_kết_quả_1, Biểu_thức_kết_quả_2: biểu thức sẽ được trả về khi việc so sánh của biểu thức bằng với các giá trị so sánh tương ứng.
1.2 Cú pháp
SELECT Tên_cột,
CASE Biểu_thức
WHEN Giá_trị_1 THEN Biểu_thức_kết_quả_1
WHEN Giá_trị_2 THEN Biểu_thức_kết_quả_2
...
ELSE Biểu_thức_kết_quả_n
END
FROM Tên_bảng
1.3 Ví dụ
SELECT Last_name, Job_id, Salary,
CASE Job_id
WHEN 'IT_PROG' THEN Salary + 100
WHEN 'ST_CLERK' THEN Salary + 200
WHEN 'SA_REP' THEN Salary + 300
ELSE Salary
END AS "Lương Mới"
FROM EMPLOYEES
2. Biểu thức CASE dạng tìm kiếm
2.1 Mô tả
- Biểu_thức_logic_1, Biểu_thức_logic_2: các biểu thức luận lý dùng để thực hiện các phép so sánh trong biểu thức CASE.
- Biểu_thức_kết_quả_1, Biểu_thức_kết_quả_2: biểu thức sẽ được trả về khi một trong các biểu thức luận lý so sánh có kết quả là đúng.
2.2 Cú pháp
SELECT Tên_cột,
CASE
WHEN Biểu_thức_logic_1 THEN Biểu_thức_kết_quả_1
WHEN Biểu_thức_logic_2 THEN Biểu_thức_kết_quả_2
...
ELSE Biểu_thức_kết_quả_n
END
FROM Tên_bảng
2.3 Ví dụ
SELECT Employee_id, Last_name, Salary,
CASE
WHEN Salary < 3000 THEN N'Thấp'
WHEN Salary BETWEEN 3000 AND 7000 THEN N'Trung bình'
ELSE N'Cao'
END "Xếp Loại"
FROM EMPLOYEES