এখানে আমার টেবিলের একটি নির্যাস:
gid | datepose | pvc
---------+----------------+------------
1 | 1961 | 01
2 | 1949 |
3 | 1990 | 02
1 | 1981 |
1 | | 03
1 | |
আমি SELECT CASEবেলো হিসাবে পিভিসি কলামটি পূরণ করতে চাই :
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 ;
ফলাফলটি সোর্স টেবিলের মতো একই সামগ্রী, কিছুই ঘটেনি এবং আমি pg_log ফাইলগুলিতে কোনও ত্রুটি বার্তা পাই না। এটি সিনট্যাক্স ত্রুটি হতে পারে, বা WHEN দফার মধ্যে একাধিক শর্ত ব্যবহারে সমস্যা হতে পারে?
সাহায্য এবং পরামর্শের জন্য ধন্যবাদ!
NULLউদাহরণস্বরূপ একটি স্ট্রিং রয়েছে