文章出處
文章列表
作用:
- 可以將查詢結果集的某一列的字段值進行替換
- 它可以生成一個新列
- 相當于switch...case和 if..else
使用語法:
case 表達式/字段
when 值 then 自定義值
else
end as 別名
when 值 then:可以理解為當某個字段為某個值的時候,然后就返回自定義值將結果集的字段值進行替換
else:如果上面的when都不滿足就執行else結果
常用用法一(case后面有字段或者表達式):
when關鍵字后面寫固定值
case關鍵字后面如果有字段或者表達式,那么這種結構只能做等值判斷,等值的意思是when關鍵字后面寫了固定的值
示例圖解:
注意:該方式不能用于判斷null
常用方式二(case關鍵字后面沒有字段或表達式):
when關鍵字后面寫條件表達式
思考:
現在有個需求說,要求年齡字段這個人滿足18歲或者年齡在某個范圍,那么如果用上面說的等值判斷,無法滿足,因為字段要匹配的是一個范圍
如果case關鍵字后面沒有寫字段或表達式,那么結構就相當于 if..elseif...else可以做范圍判斷,它可以使用null值判斷
實例圖解:
注意:
then 后面的值的類型 要與當前case范圍內的保持一致
文章列表
全站熱搜