跨行计算库存

【问题】

表 test
ID store
1   33
2   55  
3   66  
4   88  
5   12  
查询后要得到这个结果
ID store   store1  store2
1   33        33       33
2   55        88       121
3   66       154      275
4   88        242      517
5   12        254      771

【回答】

类似这种涉及到层次的计算使用SQL太复杂了,这种数据量不大的情况,将数据取出来用SPL来算更方便:

A
1$SELECT ID,store FROM TEST ORDER BY ID
2=A1.derive(store+store1[-1]:store1,store1+store2[-1]:store2)

A1:sql取数,按ID排序

A2:增加store1,store2两列,使用[-1]来引用上一条记录,完成计算:

写好的脚本如何在应用程序中调用,可以参考Java 如何调用 SPL 脚本

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值