1

有这三个表:

posts
posts_replies
likes

这个查询几乎可以很好地返回我的数据,但由于某种原因,帖子的回复计数不准确。

SELECT posts.title, posts.num, posts.status, posts.category, posts.content, posts.member_num, COUNT( posts_replies.post_num ) AS count, COUNT( likes.comment_num ) AS likes_count
FROM posts_replies
INNER JOIN posts ON ( posts_replies.post_num = posts.num )
LEFT JOIN likes ON ( likes.comment_num = posts_replies.num )
WHERE posts.status =1
AND posts.access = 'Public'
GROUP BY posts.num
ORDER BY count DESC
LIMIT 50

这是我正在使用的计数:COUNT(posts_replies.post_num) AS count

对此有何建议?

谢谢

4

1 回答 1

1

对于链接到该回复的每个赞,您的查询将对每个回复计数一次。

为了只计算每个回复一次,请替换

COUNT( posts_replies.post_num ) AS count

COUNT(DISTINCT posts_replies.num ) AS count
于 2013-03-03T13:02:15.527 回答