入库 出库 余数
A 订单1 10 1 9
A 订单2 10 2 7
A 订单2 10 2 5
如上显示的,除余数外sql可以写出来,但加余数不用循环情况下,SQL要怎么写?请大侠指导
DECLARE @t TABLE
( id INT IDENTITY(1,1),
产品 VARCHAR(10),
订单 VARCHAR(10),
入库 INT ,
出库 int
)
INSERT INTO @t
SELECT 'A','订单1',10,1
UNION all
SELECT 'A','订单2',10,2
UNION all
SELECT 'A','订单2',10,2
select * , 入库-(SELECT SUM(出库) FROM @t t1 WHERE t.id>=t1.id) 余数 FROM @t t
题目没搞明白。。。
你这入库改成原始入库好一点,根本不带变的,容易误导。
select *,入库+sum(-出库) over(order by Id) 余数 from 表名
是说没有余数字段,但是想要显示余数吗?
select * , 入库 - 出库 as ‘余数’ from 表名