select a.*,b.数量2
from(select year(时间) as 时间,sum(数量) as 数量1 from 表1 group by year(时间))a
left join
(select year(时间) as 时间,sum(数量) as 数量2 from 表2 group by year(时间))b
on a.时间=b.时间

解决方案 »

  1.   

    select a.year,sum(a.数量),sum(b.数量) from table1 a inner join table2 b on a.year=b.year
      

  2.   

    select isnull(a.时间,b.时间) as 时间,a.数量1,b.数量2
    from(select year(时间) as 时间,sum(数量) as 数量1 from 表1 group by year(时间))a
    join
    (select year(时间) as 时间,sum(数量) as 数量2 from 表2 group by year(时间))b
    on a.时间=b.时间
      

  3.   

    select sum(a.数量),sum(b.数量) from 表1 a,表2 b 
    where year(a.时间)=year(b.时间)
    group by year(时间)
      

  4.   

    select 时间,数量1,数量2 from 表1 a ,表2 b where a.year = b.year 
    group by year
      

  5.   

    可以用简单的SQL写好的,为什么有人要写的那么复杂呢????
      

  6.   


    select isnull(a.时间,b.时间) ,sum(a.数量),sum(b.数量) from 
    表1  a full join 表2  b on  year(a.时间)=year(b.时间) 
    group by isnull(a.时间,b.时间)