Đây là bảng trích xuất của tôi:
gid | datepose | pvc
---------+----------------+------------
1 | 1961 | 01
2 | 1949 |
3 | 1990 | 02
1 | 1981 |
1 | | 03
1 | |
Tôi muốn điền vào cột PVC bằng cách sử dụng một SELECT CASE
như sau:
SELECT
gid,
CASE
WHEN (pvc IS NULL OR pvc = '') AND datpose < 1980) THEN '01'
WHEN (pvc IS NULL OR pvc = '') AND datpose >= 1980) THEN '02'
WHEN (pvc IS NULL OR pvc = '') AND (datpose IS NULL OR datpose = 0) THEN '03'
END AS pvc
FROM my_table ;
Kết quả là nội dung giống như bảng nguồn, không có gì xảy ra và tôi không nhận được thông báo lỗi trong tệp pg_log. Đó có thể là lỗi cú pháp hoặc vấn đề với việc sử dụng nhiều điều kiện trong mệnh đề WHEN?
Cảm ơn sự giúp đỡ và lời khuyên!
NULL
ví dụ