CASE WHEN condition THEN result
[WHEN ...]
[ELSE result]
END
SELECT a,
CASE WHEN a=1 THEN 'one'
WHEN a=2 THEN 'two'
ELSE 'other'
END
FROM test;
CASE expression
WHEN value THEN result
[WHEN ...]
[ELSE result]
END
SELECT a,
CASE a WHEN 1 THEN 'one'
WHEN 2 THEN 'two'
ELSE 'other'
END
FROM test;
CASE 資料表達式並不計算任何對於判斷結果並不需要的子資料表達式。 比如,下面是一個可以避免被零除的方法:
SELECT ... WHERE CASE WHEN x <> 0 THEN y/x > 1.5 ELSE false END;
COALESCE 返回它的第一個非 NULL 的參數的值。它常用於在為顯示目的檢索資料時用預設值替換 NULL 值。
比如:SELECT COALESCE(description, short_description, '(none)') ...
當且僅當 value1 和 value2 相等時,NULLIF 才返回 NULL。 否則它返回 value1。
SELECT NULLIF(value, '(none)') ...