一个表是销售明细表,包括字段是p_id(商品id),quantity(数量),castprice(成本单价),casttotal(成本金额),
saleprice(销售单价),totalmoney(销售金额),batchno(批号),validdate(效期)。
一张是库存余量表,包括字段是p_id(商品id),quantity(数量),castprice(成本单价),casttotal(成本金额),
batchno(批号),validdate(效期)。
现在需要统计每个商品的各个批次的销售总计数量,和当前的批次的库存余量。即如下格式:
p_id(商品id),quantity(数量),saleprice(销售单价),totalmoney(销售金额),batchno(批号),validdate(效期),quantity(库存余量)。----------------------
saleprice(销售单价),totalmoney(销售金额),batchno(批号),validdate(效期)。
一张是库存余量表,包括字段是p_id(商品id),quantity(数量),castprice(成本单价),casttotal(成本金额),
batchno(批号),validdate(效期)。
现在需要统计每个商品的各个批次的销售总计数量,和当前的批次的库存余量。即如下格式:
p_id(商品id),quantity(数量),saleprice(销售单价),totalmoney(销售金额),batchno(批号),validdate(效期),quantity(库存余量)。----------------------
sum(quantity),
sum(saleprice),
sum(totalmoney),
sum(batchno),
sum(validdate),
sum(quantity)
from 销售明细表 inner join 库存余量表 group by p_id
大概就是这个意思吧select p_id,
sum(quantity),
sum(saleprice),
sum(totalmoney),
sum(batchno),
sum(validdate),
quantity
from 销售明细表 inner join 库存余量表 group by p_id,quantity
select a.p_id
sum(a.quantity),
sum(b.saleprice),
sum(b.totalmoney),
a.batchno,
a.validdate,
sum(a.quantity)-sum(b.quantity)
from 库存余量表 a
left join 销售明细表 b on (a.p_id=b.p_id and a.batchno=b.batchno and a.validdate=b.validdate and a.castprice=b.castprice)
group by a.p_id,a.batchno,a.validdate大概就是这样
注意在ERP中如果使用了批号 则有 进价,效期,批号三个必须相等
sum(a.quantity),
sum(b.saleprice),
sum(b.totalmoney),
a.batchno,
a.validdate,
isnull(sum(a.quantity),0)-isnull(sum(b.quantity),0)
from 库存余量表 a
left join 销售明细表 b on (a.p_id=b.p_id and a.batchno=b.batchno and a.validdate=b.validdate and a.castprice=b.castprice)
group by a.p_id,a.batchno,a.validdate
库存余量报表(销售后的库存余量)
商品名称 库存数量 批号 效期 成本单价 成本金额
A商品 8 080202 2009-02 3 24
A商品 10 080303 2009-03 3.2 32
------------------------------------------------------------------
销售报表
商品名称 销售数量 批号 效期 销售单价 销售金额
A商品 2 080202 2009-02 6 12 --------------------------------------------------------------------------------
现在需要显示的销售报表中包含库存批次的库存余量表
商品名称 销售数量 批号 效期 销售单价 销售金额 库存余量
A商品 2 080202 2009-02 6 12 8
A商品 0 080303 2009-03 0 0 10
SELECT a.商品名称, a.销售数量, a.批号, a.效期, a.销售单价, a.销售金额, b.库存数量 FROM 销售报表 a
INNER JOIN 库存余量报表 b ON a.商品名称=b.商品名称 AND a.批号=b.批号