日期:2014-05-17  浏览次数:20594 次

求sql,各位大侠帮忙啊,谢谢

表tab_a
------------------------
AID (文章ID)   clickCount(点击数)
  1               10
  2               20
  3               0    
   
表tab_b
------------------------
BID      AID (文章ID)     clickby(点击人)
  1       1               张三
  2        1              李四  
  3        2               张三


想要得到的结果集合是
AID    clickCount  clickby
1        10         张三
1        10         李四
2         20         张三
3         0          nil

请问这个sql怎么写,谢谢各位大侠啊。。。


 

------解决方案--------------------
你那个是nil,还是null

这不是左匹配就行了吗

select  a.aid,a.clickcount,b.clickby
from tab_a a left join tab_b on a.aid=b.bid
------解决方案--------------------

select t1.AID,isnull(sum(clickCount),0) as clickCount,t2.clickby
from tab_a t1 (nolock)
right join tab_b t2 (nolock) on t1.AID=t2.AID
GROUP BY t1.AID,t2.clickby

------解决方案--------------------
select B.BID,A.clickCount,A.clickby
from tab_b b