2012-03-04 47 views
0

我有類別的表(標籤)在list_tags如何計算某個類別的帖子數量?

tag_id tag_name 
    1 social 
    2 gaming 
    3 design 
    4 code 
    5 facebook 

然後,我有博客文章中blogs

blog_id blog_title 
1  post1 
2  post2 
3  post3 
最後

而且我有一個表join_blog_tags它定義了哪些類別(標籤)每篇博文都屬於:

blog_tag_id blog_tag_post_id blog_tag_list_id 
1   1      1 
2   1      2 
3   2      2 
4   2      4 

我需要以某種方式加入這3個表併產生總數每個標籤中的博文的數量。

喜歡分享:

社交| 12
gaming | 14
facebook | 30 等

回答

2

結合使用joinGROUP BY

SELECT tag_name, COUNT(tag_name) 
FROM list_tags lt 
INNER JOIN join_blog_tags bt 
    ON lt.tag_id = bt.blog_tag_list_id 
GROUP BY tag_name 

對於每個列表的帖子,你不需要加入上blogs表的計數,作爲信息的連接表中已經存在。