实现下行减上行数据

View Code
select flg,zyhxj_0,sr,zc,je,sum(je) over
(
partition by zyhxj_0 order by skdate_0
rows between unbounded preceding and current row
)ye,
accdat_0,skdate_0,zzxzy_0,zx.creusr_0,nomusr_0
from 
(
select 1 as flg,zyhxj_0 ,sum(decode(zzxfx_0,1,zzxje_0,0))sr,sum(decode(zzxfx_0,-1,zzxje_0,0))zc,sum(zzxfx_0*zzxje_0)je,
min(accdat_0)accdat_0,min(skdate_0)skdate_0,min(zzxzy_0)zzxzy_0,min(creusr_0)creusr_0
from ZZJJYMX where skdate_0<=date'${sdate}'
group by zyhxj_0
union all
select 2 as flg,zyhxj_0,decode(zzxfx_0,1,zzxje_0,0)sr,decode(zzxfx_0,-1,zzxje_0,0)zc,zzxfx_0*zzxje_0,
accdat_0,skdate_0,zzxzy_0,creusr_0
from ZZJJYMX where skdate_0<=date'${edate}' and skdate_0>=date'${sdate}'
) zx
left outer join autilis aus on zx.creusr_0=aus.usr_0
where zx.zyhxj_0=' ' order by zyhxj_0

 

posted @ 2013-03-22 12:02  玢棂  阅读(283)  评论(0编辑  收藏  举报