表1:产品代号,供应商,入库数量
     AAA       A1         100
     BBB       B1         50
表2:产品代号,供应商,出库数量
     BBB       B1         100
     CCC       C1         200想要结果:
   产品代号,供应商,入库数量,出库数量
  --------------------------------------
   AAA       A1        100
   BBB       B1        50        100
   CCC       C1                  200
    

解决方案 »

  1.   


    select a.*,b.出库数量 from 表1 a full join 表2 b on a.产品代号=b.产品代号
      

  2.   

    select 产品代号,供应商,sum(入库数量) as 入库数量,sum(出库数量) as 出库数量
    from(
    select 产品代号,供应商,入库数量,0 as 出库数量 from 表1
    union all
    select 产品代号,供应商,0 as 入库数量,出库数量 from 表2) t
    group by 产品代号,供应商
      

  3.   

    select 产品代号,供应商,
    入库数量=sum(case when flag=1 then 入库数量 else 0 end),
    出库数量=sum(case when flag=2 then 入库数量 else 0 end)
    from(
    select flag=1,* from 表1
    union all
    select 2,* from 表2) k
    group by 产品代号,供应商
      

  4.   

    select 
        isnull(A.产品代号, B.产品代号) as 产品代号,
         isnull(A.供应商 B.供应商) as 供应商,
        A.入库数量
        B.出库数量
    from
        表1 A
    full outter join
        表2 B
    on
        A.产品代号 = B.产品代号
    and
        A.供应商 = B.供应商