求sql查询语句

beita258 2010-07-05 04:06:13
提货序号 提货数 库存数 剩余数
1 3 15 12
2 5 15 7
3 1 15 6
4 4 15 2
5 6 15 -4
6 2 15 -6
7 2 15 -8
8 1 15 -9
原始数据为 提货序号 提货数 库存数 需要得到上表剩余数
Oracle 9i
...全文
86 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
beita258 2010-07-05
  • 打赏
  • 举报
回复
Phoenix_99 不好意思了,我结贴跟你差不多同时...没看到你回帖了...
beita258 2010-07-05
  • 打赏
  • 举报
回复
.....
beita258 2010-07-05
  • 打赏
  • 举报
回复
感谢楼上这位,一直想着lead lag开窗 ,没想到sum开窗 ,分给你...
Phoenix_99 2010-07-05
  • 打赏
  • 举报
回复
with temp as(
select 1 a,3 b,15 c from dual
union all
select 2 a,5 b,15 c from dual
union all
select 3 a,1 b,15 c from dual
union all
select 4 a,4 b,15 c from dual
union all
select 5 a,6 b,15 c from dual
union all
select 6 a,2 b,15 c from dual
union all
select 7 a,2 b,15 c from dual
union all
select 8 a,1 b,15 c from dual
)
select a,b,c,c - sum(b) over(order by a) d from temp
dzntree 2010-07-05
  • 打赏
  • 举报
回复
看下面代码,已经测试过了

select 提货序号,
提货数,
库存数,
库存数-sum(提货数) over (order by 提货序号)
from tab;

beita258 2010-07-05
  • 打赏
  • 举报
回复
看我表中的剩余数...工程提货,第二个人提完货后的剩余数应该是第一个人 和 他自己提完后的剩余数,并非他自己提走后的剩余...第三个人提货后剩余是 前2个人 加上他自己提走的数量后的剩余...依次...
Phoenix_99 2010-07-05
  • 打赏
  • 举报
回复
那你想要什么样的结果?
beita258 2010-07-05
  • 打赏
  • 举报
回复
两位... 得到简单相减的结果 剩余数 是 12 ,10,14 ....并非我需要的正确结果....
Phoenix_99 2010-07-05
  • 打赏
  • 举报
回复
select 提货序号,提货数,库存数,库存数-提货数 as 剩余数 from tablename;
beita258 2010-07-05
  • 打赏
  • 举报
回复
另 补充下,因为此为部分数据还需后续处理,因此不想用cursor处理此部分数据得到结果
eeff 2010-07-05
  • 打赏
  • 举报
回复
select 提货序号,提货数,库存数,库存数-提货数 as 剩余数 from tablename;

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧