【发布时间】:2009-09-08 14:09:16
【问题描述】:
这应该很容易。
我的问题和this one很相似;基本上,我有一个帖子表,一个带有 post_id 外键的 cmets 表,以及一个带有帖子 ID 外键的投票表。我想做一个查询并返回一个包含每个帖子一行的结果集,以及关联的 cmets 和投票数。
从我上面链接的问题来看,似乎要返回一个只包含每个帖子的一行和一个评论计数的表格,这是正确的方法:
SELECT a.ID, a.Title, COUNT(c.ID) AS NumComments
FROM Articles a
LEFT JOIN Comments c ON c.ParentID = a.ID
GROUP BY a.ID, a.Title
我认为添加投票计数就像添加另一个左连接一样简单,如下所示
SELECT a.ID, a.Title, COUNT(c.ID) AS NumComments, COUNT(v.id AS NumVotes)
FROM Articles a
LEFT JOIN Comments c ON c.ParentID = a.ID
LEFT JOIN Votes v ON v.ParentID = a.ID
GROUP BY a.ID, a.Title
但我得到了不好的数字。我错过了什么?
【问题讨论】:
标签: sql