3.1. CASE
CASE thực hiện việc thêthêm giágiá trị cho một cột mới dựa trêtrên điều kiện.
a) CúCú phápháp:
b) VíVí dụ:
ThêThêm giágiá trị theo điều kiện của cột i:
-- i[1,2,3]
SELECT i, CASE WHEN i > 2 THEN 1 ELSE 0 END AS test
FROM integers;
i |
test |
1 |
0 |
2 |
0 |
3 |
1 |
Phần WHEN THEN của biểu thức điều kiện CASE cócó thể được nối tiếp, bất cứ khi nànào bất kỳ điều kiện nànào trả về giágiá trị true cho một bộ đơn lẻ, biểu thức tương ứng sẽ được đáánh giágiá vàvà trả về.
SELECT i, CASE WHEN i = 1 THEN 10 WHEN i = 2 THEN 20 ELSE 0 END AS test
FROM integers;
i |
test |
1 |
10 |
2 |
20 |
3 |
0 |