读书人

请问一个关于窗口函数的有关问题

发布时间: 2013-09-05 16:02:07 作者: rapoo

请教一个关于窗口函数的问题
请教一个关于窗口函数的问题:

H_DATE 编码 名称 数量 累计数量 金额 累计金额
2013-01-048000013 A10010010001000
2013-01-058000013 A10020010002000
2013-01-078000013 A-2000-199010
2013-01-048000013 B50050020002010
2013-01-068000013 B-5000-1550460

使用下面的函数计算累计值,把当日+后一日的数量和金额相加放在累计字段上,负号为卖出
nvl(sum(数量) over (order by 名称,h_date rows unbounded preceding),0) as ljsl,
nvl(sum(金额) over (order by 名称,h_date rows unbounded preceding),0) as ljje

处理数量的时候累加后为0,但金额会有一个余额,在累加金额的时候,B会把A剩余的10也加入到B里面,如何按照名称不把A剩余的10加到B里面去?

谢谢!
[解决办法]
nvl(sum(数量) over (partition by 名称 order by h_date rows unbounded preceding),0) as ljsl,
nvl(sum(金额) over (partition by 名称 order by h_date rows unbounded preceding),0) as ljje

读书人网 >oracle

热点推荐