declare @a table(货号 int,毛需求 int,订单供给 int,仓存供给 int)
insert @a(货号,毛需求,订单供给,仓存供给)
values(101,500,0,0)
insert @a(货号,毛需求,订单供给,仓存供给)
values(101,0,100,0)
insert @a(货号,毛需求,订单供给,仓存供给)
values(101,0,0,400)
insert @a(货号,毛需求,订单供给,仓存供给)
values(101,200,0,400)
select * from @a
declare @b table(货号 int,毛需求 int,订单供给 int,仓存供给 int,累计 int)
declare @num int
set @num=0declare @a1 int
declare @a2 int
declare @a3 int
declare Num_Cursor CURSOR FOR                      --游标的定义
select 毛需求,订单供给,仓存供给 from @a
open Num_Cursor                                    --打开游标
fetch next from Num_Cursor into @a1,@a2,@a3
while @@FETCH_STATUS=0
begin
set @num=@num+@a2+@a3-@a1
insert @b(毛需求,订单供给,仓存供给,累计)        
values(@a1,@a2,@a3,@num)
fetch next  from Num_Cursor  into  @a1,@a2,@a3      --循环
end
close Num_Cursor                                    --关闭游标
deallocate Num_Cursor                               --销毁游标
select * from @b
--给个例子参考