用移动加权平均法怎么算出出库的单价跟金额!!
vva12 2009-05-20 01:54:17 --单据类型 1为入库,2为出库
declare @t table(名称 varchar(20),数量 decimal(18,0),单价 decimal(18,4),金额 decimal(18,4),单据类型 int,日期 smalldatetime)
insert @t
select 'A', 15, 1, 15, 1, '2008-01-01' union all
select 'A', 3, 1.5, 4.5, 1, '2008-01-02' union all
select 'A', 10, null, null, 2, '2008-01-03' union all
select 'A', 5, 1.7, 8.5, 1, '2008-01-04' union all
select 'A', 6, null, NULL, 2, '2008-01-05' union all
select 'A', 2, null, null, 2, '2008-01-06' union all
select 'A', 3, 2, 6, 1, '2008-01-07'
/*在SQL里我想实现的是用移动加权平均法算出出库的单价跟金额怎么样能实现?
用移动加权平均法把上面出库为NULL的填上单价跟金额
结果:
名称 数量 单价 金额 单据类型 日期
----------------------------------------------------------------
A 15 1.0000 15.0000 1 2008-01-01
A 3 1.5000 4.5000 1 2008-01-02
A 10 (15*1+3*1.5)/18=1.0833 10.8330 2 2008-01-03
A 5 1.7000 8.5000 1 2008-01-04
A 6 (15*1+3*1.5-10*1.0833+5*1.7)/(15+3-10+5)=1.3205 略。。。。。。。。。
*/