如题,上月结存转为本月期初的时候,有部分数据与实际情况不相符,请问是什么情况?代码如下,应如何修正代码才能保证完全正确呢?求助各位大佬!- SELECT LEFT(日期,4) AS 年,RIGHT(日期,2) AS 月,T2.物料号,T2.物料名称,T2.规格,T2.品牌,T2.单位,T2.货号,T2.批号,T2.效期,期初+数量 AS 期初,入库,出库,结存+数量 AS 结存 FROM
- (SELECT A.日期,A.物料号,A.物料名称,A.规格,A.品牌,A.单位,A.货号,A.批号,A.效期,IIF(SUM(B.入库) IS NULL,0,SUM(B.入库))-IIF(SUM(B.出库) IS NULL,0,SUM(B.出库)) AS 期初,期初+IIF(A.入库 IS NULL,0,A.入库)-IIF(A.出库 IS NULL,0,A.出库) AS 结存,A.入库,A.出库 FROM
- (SELECT format(日期,"yyyymm") as 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,SUM(入库) AS 入库,SUM(出库) AS 出库 FROM
- (SELECT 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,数量 AS 入库,0 AS 出库 FROM [本期入库$] UNION ALL SELECT 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,0,数量 FROM [本期出库$])
- GROUP BY format(日期,"yyyymm"),物料号,物料名称,规格,品牌,单位,货号,批号,效期)A
- LEFT JOIN
- (SELECT format(日期,"yyyymm") as 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,SUM(入库) AS 入库,SUM(出库) AS 出库 FROM
- (SELECT 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,数量 AS 入库,0 AS 出库 FROM [本期入库$] UNION ALL SELECT 日期,物料号,物料名称,规格,品牌,单位,货号,批号,效期,0,数量 FROM [本期出库$])
- GROUP BY format(日期,"yyyymm"),物料号,物料名称,规格,品牌,单位,货号,批号,效期)B
- ON A.物料号=B.物料号 AND A.日期>B.日期
- GROUP BY A.日期,A.物料号,A.物料名称,A.规格,A.品牌,A.单位,A.货号,A.批号,A.效期,A.入库,A.出库)T1
- RIGHT JOIN
- (SELECT 物料号,物料名称,规格,品牌,单位,货号,批号,效期,SUM(数量) AS 数量 FROM
- (SELECT 物料号,物料名称,规格,品牌,单位,货号,批号,效期,数量 FROM [期初结存$] UNION ALL SELECT 物料号,物料名称,规格,品牌,单位,货号,批号,效期,0 FROM [本期入库$])
- GROUP BY 物料号,物料名称,规格,品牌,单位,货号,批号,效期)T2
- ON T1.物料号=T2.物料号
- ORDER BY T2.物料号,T2.物料名称,T2.规格,T2.品牌,T2.单位,T2.货号,T2.批号,T2.效期,日期
复制代码
|