表1 
   产品     卖出金额
   家电       1000
   餐具        200
表2
   产品     买入金额
   家电        500
   数码产品    2000想通过SQL得出以下结果   产品     卖出金额    买入金额
   家电        1000         500
   餐具          200
   数码产品                 200
  

解决方案 »

  1.   

    Select 
    IsNull(A.产品, B.产品) As 产品,
    IsNull(A.卖出金额, 0) As 卖出金额,
    IsNull(B.买入金额, 0) As 买入金额
    From 表1 A
    Full Join 表2 B
    On A.产品 = B.产品
      

  2.   

    select ISNULL(A.产品,B.产品) AS 产品,A.卖出金额,B.买入金额
    FROM 表1 A FULL JOIN 表2 B ON A.产品=B.产品
      

  3.   

    create table 表1 (产品 varchar(20),     卖出金额 int)
       insert into 表1 select '家电',       1000 union all
       select '餐具',        200
    create table 表2(   产品 varchar(20),     买入金额 int)   insert into 表2 select '家电',        500 union all
       select '数码产品',    2000
    select isnull(a.产品,b.产品),卖出金额,买入金额 from 表1 a full join 表2 b on a.产品=b.产品
    ---
    家电 1000 500
    餐具 200 NULL
    数码产品 NULL 2000
      

  4.   

    Create Table 表1
    (产品 Nvarchar(10),
     卖出金额 Int)Insert 表1 Select N'家电',       1000
    Union All Select N'餐具',        200Create Table 表2
    (产品 Nvarchar(10),
     买入金额 Int)
    Insert 表2 Select N'家电',        500
    Union All Select N'数码产品',    2000
    GO
    Select 
    IsNull(A.产品, B.产品) As 产品,
    IsNull(A.卖出金额, 0) As 卖出金额,
    IsNull(B.买入金额, 0) As 买入金额
    From 表1 A
    Full Join 表2 B
    On A.产品 = B.产品
    Go
    Drop Table 表1, 表2
    --Result
    /*
    产品 卖出金额 买入金额
    家电 1000 500
    数码产品 0 2000
    餐具 200 0
    */