CASE 關鍵字 (SQL CASE Keyword)

CASE 類似於程式語言裡的 if/then/else 語句,用來作邏輯判斷。

CASE 語法 (SQL CASE Syntax)

CASE
WHEN condition
THEN result
[WHEN···]
[ELSE result]
END;
CASE expression
WHEN value THEN result
[WHEN···]
[ELSE result]
END;
若省略了ELSE子句且洽無相符的條件則會返回NULL。

CASE 關鍵字使用實例 (Example)

假設我們作一個問卷調查:您喜歡這個網站嗎? 1.喜歡 2.不喜歡 3.還OK

問卷結果資料表「questionnaire」如下...
Name Answer
張一 1
王二 2
李三 3

我們可以作以下這個 SQL 查詢...
select Name, case Answer
when 1 then '喜歡'
when 2 then '不喜歡'
when 3 then '還OK'
END
FROM questionnaire;
select Name, case
when Answer=1 then '喜歡'
when Answer=2 then '不喜歡'
when Answer=3 then '還OK'
END
AS Answer
FROM questionnaire;

查詢結果如下...
Name Answer
張一 喜歡
王二 不喜歡
李三 還OK