日期:2014-05-18 浏览次数:20638 次
declare @t table (訂單號 varchar(10),訂單數量 int,動作 varchar(10),生產日期 datetime,生產數量 int,id int)
insert into @t values('A0001',1500,'A01','2007/09/01',500,1)
insert into @t values('A0001',1500,'A01','2007/09/02',700,2)
insert into @t values('A0001',1500,'A01','2007/09/03',300,3)
insert into @t values('A0001',1500,'B01','2007/09/01',800,4)
insert into @t values('B0001',1600,'A01','2007/09/04',640,5)
insert into @t values('B0001',1600,'A01','2007/09/05',300,6)
select
*,
[累計完工數]=(select sum(生產數量) from @t where ID!>t.ID and 訂單號=t.訂單號 and 動作=t.動作),
[未完工數]=訂單數量-(select sum(生產數量) from @t where ID!>t.ID and 訂單號=t.訂單號 and 動作=t.動作)
from
@t t
(所影响的行数为 1 行)
(所影响的行数为 1 行)
(所影响的行数为 1 行)
(所影响的行数为 1 行)
(所影响的行数为 1 行)
(所影响的行数为 1 行)
訂單號 訂單數量 動作 生產日期 生產數量 id 累計完工數 未完工數
---------- ----------- ---------- ------------------------------------------------------ ----------- ----------- ----------- -----------
A0001 1500 A01 2007-09-01 00:00:00.000 500 1 500 1000
A0001 1500 A01 2007-09-02 00:00:00.000 700 2 1200 300
A0001 1500 A01 2007-09-03 00:00:00.000 300 3 1500 0
A0001 1500 B01 2007-09-01 00:00:00.000 800 4 800 700
B0001 1600 A01 2007-09-04 00:00:00.000 640 5 640 960
B0001 1600 A01 2007-09-05 00:00:00.000 300 6 940 660
(所影响的行数为 6 行)