| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 771 人关注过本帖
标题:实在没招了,求助!
只看楼主 加入收藏
fyqabc
Rank: 1
等 级:新手上路
帖 子:110
专家分:3
注 册:2006-3-4
结帖率:54.55%
收藏
 问题点数:0 回复次数:2 
实在没招了,求助!
有一个表,如下:

产品 单据 数量
1010 入库 100
1010 入库 50
1010 出库 70


要求,减掉出库后,数量为0的入库就删除,入库数量小于出库数量,就继续用其余入库减出库,直到大于0,如下结果

结果:
产品 单据 数量
1010 入库 80

还有很多其它产品,这个存储过程该怎么写呢,,谢谢!
搜索更多相关主题的帖子: 产品 1010 
2010-05-19 16:45
aei135
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:12
帖 子:232
专家分:1176
注 册:2009-4-6
收藏
得分:0 
create proc p_test
as
begin
delete from table where 产品 in(
select 产品 from table group by 产品 having sum(case when 单据='入库' then 数量 when 单据='出库' then -数量 end)=0)
select 产品,单据,sum(case when 单据='入库' then 数量 when 单据='出库' then -数量 end) 数量
 from table group by 产品,单据
end

2010-05-20 20:31
fyqabc
Rank: 1
等 级:新手上路
帖 子:110
专家分:3
注 册:2006-3-4
收藏
得分:0 
TKS!

工欲善其事,必先利其器!
2010-05-21 10:36
快速回复:实在没招了,求助!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027157 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved