oracle case decode应用
接触oracle时间不是很长,工作中需要用到了CASE,从网上搜索发现还有decode同样可以满足要求。
下面是工作中用到的脚本:
select decode(zwpzfl_jzfx,'1','借方','2','贷方') as 方向
from ZWPZFL2008;
select case zwpzfl_jzfx
when '1' then '借方'
when '2' then '贷方'
end as 方向
from ZWPZFL2008;
个人认为两者的优劣
CASE语句在处理分支非常多或者每个分支要执行语句的时候显得非常灵活, 并且可读性好。比如:
select case zwpzfl_jzfx
when '1' then updata............
when '2' then updata............
when '3' then updata............
when '4' then updata............
when '5' then updata............
end as 借方
from ZWPZFL2008;
当只是需要匹配少量数值时,用Decode更为简洁,一目了然。
很简单的一个知识点,希望对大家有所帮助。