本帖最后由 ly9422 于 2012-07-16 01:15:29 编辑

解决方案 »

  1.   

    select yprk.amount,ypck.amount from yprk inner join ypck on yprk.id=ypck.id group by 名称,编码...
      

  2.   

    先union 然后 sum数量,如果是出库数量前加上负号
      

  3.   

    SELECT
    B.GoodsName , B.GoodsType, B.GoodsCode , C.InQty, D.OutQty, B.CurQty
    FROM 
    (
    SELECT
    GoodsName, GoodsType, GoodsCode,SUM(Qty) AS CurQty
    FROM 
    (
    SELECT
    GoodsName, GoodsType, GoodsCode,Qty
    FROM YPrk
    UNION ALL
    SELECT
    GoodsName, GoodsType, GoodsCode,Qty*(-1) AS Qty
    FROM YPck
    ) A 
    GROUP BY AA.GoodsName, AA.GoodsType, AA.GoodsCode
    ) B
    LEFT JOIN 
    (
    SELECT
    GoodsName, GoodsType, GoodsCode,SUM(Qty) AS InQty
    FROM YPrk
    ) C ON B.GoodsName = C.GoodsName AND B.GoodsType=C.GoodsType AND B.GoodsCode = C.GoodsCode
    LEFT JOIN 
    (
    SELECT
    GoodsName, GoodsType, GoodsCode,SUM(Qty) AS OutQty
    FROM YPck
    ) D ON B.GoodsName = D.GoodsName AND B.GoodsType=D.GoodsType AND B.GoodsCode = D.GoodsCode