sql語句case when用法
當我們需要從數據源上 直接判斷數據顯示代表的含義的時候 ,就可以在SQL語句中使用 Case When這個函數了.
Case具有兩種格式。簡單Case函數和Case搜索函數。
?第一種 格式 :?簡單Case函數 :
格式說明 ? ?
case 列名 when ? 條件值1 ? then ?選擇項1 when ? 條件值2 ? ?then ?選項2……. else ? ? 默認值 ? ? ?end
select case? job_level when?????'1'?????then????'1111' when ???'2'?????then????'1111' when ???'3'?????then????'1111' else?????'eee'?end from?????dbo.employee
?第二種 ?格式 :Case搜索函數
格式說明 ? ?
case ?
when ?列名= 條件值1 ? then ?選擇項1
when ?列名=條件值2 ? ?then ?選項2…….
else ? ?默認值 end
eg: update???employee set????e_wage?= case when???job_level?=?'1'????then?e_wage*1.97 when???job_level?=?'2'???then?e_wage*1.07 when???job_level?=?'3'???then?e_wage*1.06 else???e_wage*1.05 end
提示:通常我們在寫Case When的語句的時候,會容易忘記 end 這個結束,一定要記得喲!
比較: 兩種格式,可以實現相同的功能。
? 簡單Case函數的寫法相對比較簡潔,但是和Case搜索函數相比,功能方面會有些限制,比如寫判斷式。還有一個需要注意的問題,Case函數只返回第一個符合條件的 ? ? 值,剩下的Case部分將會被自動忽略。
推薦教程: 《sql教程》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END