有俩个表
a (产品名称,数量)
b (产品名称,数量)
a:产品1,100
   产品2,200
b:产品1,30
   产品3,40现在要如下的查询结果
产品1,130
产品2,200
产品3,40
sql语句该这么写

解决方案 »

  1.   

    select  
        产品名称,sum(数量)
    from 
        (select * from a union all select * from b) c
    group by
        产品名称
      

  2.   

    ----------------------
    select 产品名称=a.产品名称,数量=sum(a.数量+isnull(b.数量,0)) from a join b on a.产品名称=b.产品名称
      

  3.   

    declare @a table(产品名称 varchar(10),数量 int)
    declare @b table(产品名称 varchar(10),数量 int)
    insert @a select '产品1',100 union all
    select '产品2', 200
    insert @b select '产品1',30 union all
    select '产品3',40
    select a.产品名称,sum(a.数量 ) as 数量
    from (select * from @a union all select * from @b) a 
    group by a.产品名称/*产品名称       数量          
    ---------- ----------- 
    产品1        130
    产品2        200
    产品3        40
    */