Case具有兩種格式。簡單Case函數和Case搜索函數。
–簡單Case函數:
CASE sex。
WHEN ’1′ THEN ’男’。
WHEN ’2′ THEN ’女’。
ELSE ’其他’ END。
–Case搜索函數:
CASE WHEN sex = ’1′ THEN ’男’。
WHEN sex = ’2′ THEN ‘女’。
ELSE ‘其他’ END。
這兩種方式,可以實現相同的功能。簡單Case函數的寫法相對比較簡潔,但是和Case搜索函數相比,功能方面會有些限制,比如寫判斷式。還有壹個需要註意的問題,Case函數只返回第壹個符合條件的值,剩下的Case部分將會被自動忽略。
–比如說,下面這段SQL,將永遠無法得到“第二類”這個結果。
CASE WHEN col_1 IN (‘a’, ‘b’) THEN ’第壹類’。
WHEN col_1 IN (‘a’) THEN ’第二類’。
ELSE’其他’ END。