select
nvl(sum(case when a.flw_optid = '6008' then a.flw_amount
when a.flw_optid = '5008'" then -a.flw_amount else 0 end), 0.00)
as sumAmount
from vi_ttnsmflwing a
inner join vi_tcommaccount b
on a.flw_accid = b.acc_id and b.acc_rleid= '00'
where
a.flw_baldate between
to_date('2011-12-16','yyyy-mm-dd') and to_date('2011-12-17','yyyy-mm-dd')
以上是sql语句,我已经试出来了,是 nvl(sum(case when a.flw_optid = '6008' then a.flw_amount
when a.flw_optid = '5008'" then -a.flw_amount else 0 end), 0.00)
as sumAmount 这句话导致的,哪位高手告诉我下还有别的方法能实现 以上 那句话的 意思么,也就是说不用case when,最好简单点的,谢谢
nvl(sum(case when a.flw_optid = '6008' then a.flw_amount
when a.flw_optid = '5008'" then -a.flw_amount else 0 end), 0.00)
as sumAmount
from vi_ttnsmflwing a
inner join vi_tcommaccount b
on a.flw_accid = b.acc_id and b.acc_rleid= '00'
where
a.flw_baldate between
to_date('2011-12-16','yyyy-mm-dd') and to_date('2011-12-17','yyyy-mm-dd')
以上是sql语句,我已经试出来了,是 nvl(sum(case when a.flw_optid = '6008' then a.flw_amount
when a.flw_optid = '5008'" then -a.flw_amount else 0 end), 0.00)
as sumAmount 这句话导致的,哪位高手告诉我下还有别的方法能实现 以上 那句话的 意思么,也就是说不用case when,最好简单点的,谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货