CASE語法介紹
何謂CASE語法
- CASE語法等同於在SQL語法加上if子句,寫入你想要的判斷轉換資料數值,功能跟DECODE一樣,在閱讀上,CASE語法可讀性較高,建議使用CASE語法
CASE格式
CASE [expr]
WHEN comp_expr THEN return_expr
[WHEN comp_expr THEN return_expr]
[ELSE else_expr]
END;
expr:表格欄位
comp_expr:表格欄位條件判斷
return_expr:傳回值
else_expr:與表格欄位條件判斷不符合的傳回值
[]:代表裡面的語句可有可無,至少要一個WHEN comp_expr THEN return_expr語句
select case salary when salary>1000 then 500
when salary>2000 then 600
else 400
end;
from emp;
說明:在emp表格裡如果salary欄位的薪水大於1000就為500,如果薪水大於2000就為600,如果都不是就為400
select case when salary>1000 then 500
when salary>2000
then 600
else 400 end;
from emp;
說明:在emp表格裡如果salary欄位的薪水大於1000就為500,如果薪水大於2000就為600,如果都不是就為400