在PostgreSQL中,CASE表達式用于在SELECT語句中根據條件返回不同的值。其語法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
其中,condition1
、condition2
等為條件表達式,result1
、result2
等為滿足對應條件時返回的值,default_result
為如果所有條件都不滿足時返回的默認值。
例如,以下示例展示了一個簡單的CASE表達式用法:
SELECT
name,
CASE
WHEN age < 18 THEN 'Child'
WHEN age >= 18 AND age < 65 THEN 'Adult'
ELSE 'Senior'
END AS age_group
FROM users;
在這個示例中,根據用戶的年齡返回不同的年齡組別。如果年齡小于18歲,則返回’Child’,如果年齡在18歲到65歲之間,則返回’Adult’,否則返回’Senior’。