我如何计算某个类别的帖子数量?

时间:2012-03-04 20:43:06

标签: sql

我在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个
游戏| 14个
facebook |三十 等

1 个答案:

答案 0 :(得分: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表,因为联接表中已经存在这些信息。