在PostgreSQL中,CASE表達式用于根據條件返回不同的值。它的一般語法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
在這個語法中,CASE表達式會逐一判斷每個WHEN條件,如果某個條件滿足,則返回對應的結果值;如果沒有條件滿足,則返回ELSE之后的默認結果值。如果沒有提供ELSE部分,且沒有任何條件滿足,則返回NULL。
下面是一個使用CASE表達式的示例:
SELECT
CASE
WHEN grade >= 90 THEN 'A'
WHEN grade >= 80 THEN 'B'
WHEN grade >= 70 THEN 'C'
ELSE 'D'
END AS letter_grade
FROM
student_scores;
在這個示例中,根據學生的分數判斷其成績等級,并返回對應的字母成績。