急:一个SQL语句
假设有以下两个表: 
 create   table   #sl_1(KindCode   varchar(10),KindCodeName   varchar(10),Total   money) 
 insert   #sl_1   values( '001 ', '工业 ',100) 
 insert   #sl_1   values( '008 ', '商业 ',20) 
 insert   #sl_1   values( '009 ', '生活 ',30)   
 create   table   #sl_2(KindCode   varchar(10),KindCodeName   varchar(10),Total   int) 
 insert   #sl_2   values( '001 ', '工业 ',-10) 
 insert   #sl_2   values( '008 ', '商业 ',-50)     
 ___________________________________________ 
 我想要的结果如下   :      
 要求:语句越简练越好   执行速度越快越好,因为我要用这个语句检索很多数据,语句中不要带   in   或者not   in   或者   exists关键字 
 KindCode         KindCodeName      Total 
    001                              工业                           90            (注释:100+(-10)=90) 
    008                              商业                           -30 
    009                              生活                           30 
------解决方案--------------------  select tb.KindCode,tb.KindCodeName,sum(Total) as Total  
 from 
    (select KindCode,KindCodeName,Total from #sl_1 
     union all 
     select KindCode,KindCodeName,Total from #sl_2 
     ) tb 
 group by tb.KindCode,tb.KindCodeName 
------解决方案--------------------select KindCode,KindCodeName,Total=sum(Total) 
 from 
 ( 
 select * from #sl_1 
 union all  
 select * from #sl_2 
 )as tmp group by KindCode,KindCodeName
------解决方案--------------------以上两种都是正确的。 
 如果两个表里的数据不存在重复: 
 select KindCode,KindCodeName,Total=t.Total+v.Total 
 from #sl_1 t left join #sl_2 v on t.KindCode=v.KindCode   
 纯属蹭分.
------解决方案--------------------select KindCode=isnull(a.KindCode,b.KindCode),KindCodeName=isnull(a.KindCodeName,b.KindCodeName), 
 Total=isnull(a.Total,0)+isnull(b.Total,0) from #sl_1 a  full outer join #sl_2 b 
 on a.KindCode=b.KindCode 
------解决方案--------------------上面的只满足KindCode不重复的情况