一个关于判断0值的问题?
我的动态sql语句中有一句话:
abs(to_number(a.updayreal)-to_number(a.dayreal)) * 100 / a.dayreal>:llvar
但是在a.dayreal=0时,会出现除数为0,数据窗口会报错,请问有什么办法判断a.dayreal的值,如果为0,就付给a.dayreal一个我指定的值,避免出现系统包错的情况??
问题点数:20、回复次数:4Top
1 楼sasacat(傻傻猫)回复于 2006-03-03 20:33:12 得分 0
abs(to_number(a.updayreal)-to_number(a.dayreal)) * 100 / (case when a.dayreal=0 then 数值 else a.dayreal end)>:llvar
Top
2 楼sasacat(傻傻猫)回复于 2006-03-03 20:34:24 得分 15
或者是
abs(to_number(a.updayreal)-to_number(a.dayreal)) * 100 / decode(a.dayreal,0,数值,a.dayreal)>:llvar
Top
3 楼boy1(Spike)回复于 2006-03-04 00:46:36 得分 0
decode(
a.dayreal,
0,XXX, --0值
abs(to_number(a.updayreal)-to_number(a.dayreal)) * 100 / a.dayreal) --非0
)Top
4 楼hzwm(那时花开)回复于 2006-03-04 08:46:57 得分 5
decodeTop




