mysql中case的用法:以case關鍵字為開始,END為結束,逐一判斷每個 WHEN 子句直到返回真值為止,語法“CASE WHEN <求值表達式> THEN <表達式> ELSE <表達式> END”;在寫mysql查詢語句的時候,如果需要根據查詢結果判斷來返回值的時候可以使用高級函數“case....when”。
CASE表達式的語法分為簡單CASE表達式和搜索CASE表達式兩種。
搜索CASE表達式
CASE WHEN <求值表達式> THEN <表達式>WHEN <求值表達式> THEN <表達式>
WHEN <求值表達式> THEN <表達式>
.
ELSE <表達式>
END
簡單CASE表達式
語法:
CASE <表達式>WHEN <表達式> THEN <表達式>
WHEN <表達式> THEN <表達式>
WHEN <表達式> THEN <表達式>
.
ELSE <表達式>
END
執行方式:
逐一判斷每個 WHEN 子句直到返回真值為止。
此外,沒有能夠返回真值的WHEN 子句時,也會返回 ELSE 子句指定的表達式。
兩者不同之處:簡單CASE 表達式最初的“CASE< 表達式 >”也會作為求值的對象。
注意:
雖然CASE表達式中的ELSE子句可以省略,但還是希望大家不要省略。
CASE 表達式最后的“END”是不能省略的。