求SQL语句?同行数据相减更新下行数据.(用循环)
CREATE TABLE T
(
ITEM VARCHAR(20),
INUM VARCHAR(20),
LOT VARCHAR(20),
QTY INT,
TOTAL INT
)
INSERT T
SELECT 'A','1','1',12,45
UNION
SELECT 'A','1','2',11,45
UNION
SELECT 'A','1','3',3,45
UNION
SELECT 'B','1','1',20,69
UNION
SELECT 'B','1','2',7,69
UNION
SELECT 'B','1','3',13,69
原始数据:
A 1 1 12 45
A 1 2 11 45
A 1 3 3 45
B 1 1 20 69
B 1 2 7 69
B 1 3 13 69
改变的数据为,相同ITEM 的同个 INUM ,按lot顺序 由TOTAL-QTY 相减的数.
下一个批次LOT的QTY则由上个(TOTAL-QTY )-QTY .这样顺下来减.
减后的数据为
A 1 1 23 45 (45-12=23)
A 1 2 12 45 (23-12=11)
A 1 3 9 45 (11-9=2)
B 1 1 49 69 (69-20=49)
B 1 2 42 69 (49-7=42)
B 1 3 29 69 (42-13=29)
这样的SQL怎么写.
(
ITEM VARCHAR(20),
INUM VARCHAR(20),
LOT VARCHAR(20),
QTY INT,
TOTAL INT
)
INSERT T
SELECT 'A','1','1',12,45
UNION
SELECT 'A','1','2',11,45
UNION
SELECT 'A','1','3',3,45
UNION
SELECT 'B','1','1',20,69
UNION
SELECT 'B','1','2',7,69
UNION
SELECT 'B','1','3',13,69
原始数据:
A 1 1 12 45
A 1 2 11 45
A 1 3 3 45
B 1 1 20 69
B 1 2 7 69
B 1 3 13 69
改变的数据为,相同ITEM 的同个 INUM ,按lot顺序 由TOTAL-QTY 相减的数.
下一个批次LOT的QTY则由上个(TOTAL-QTY )-QTY .这样顺下来减.
减后的数据为
A 1 1 23 45 (45-12=23)
A 1 2 12 45 (23-12=11)
A 1 3 9 45 (11-9=2)
B 1 1 49 69 (69-20=49)
B 1 2 42 69 (49-7=42)
B 1 3 29 69 (42-13=29)
这样的SQL怎么写.
...全文



