casewhen语句和decode函数的作用很相似,都可以实现对查询的结果进行判断,从而返回指定的值
case when
用法示例1:
case 列名
when 值 then
…
[else 值]
end [as 别名]
实例:
case status
when 1 then
‘锁定’
when 2 then
‘关闭’
else
‘正常’
end as 状态
用法示例2:
case
when 表达式
then 值
…
[else 值]
end
实例:
case when age>18 then ‘成年’
when age < 18 then ‘未成年’
else ‘不合法’
end
decode
用法示例:
decode(列名,值1,结果1,值2,结果2… 默认值)
实例:
decode(class,’1′,‘一班’,’2′,’二班’,’三班’)