我的数据库中有两个表
1.用户表
2.POST表(ID,标题)
3.收藏夹表(id,post_id,user_id)
我想获取特定用户最喜欢的帖子以及每个帖子的总收藏。
SELECT post.title,COUNT(favourite.post_id) as total_favourites FROM post
JOIN favourite ON post.id=favourite.post_id
WHERE favourite.user_id=119 GROUP BY favourite.post_id
我得到了结果,但是
total_favourites
存在一个问题,即使特定帖子有多个收藏夹,它也总是计为1
。例如:
最喜欢的表
id post_id,user_id
1 1 1
1 1 2
在上面的帖子中ID为
1
的人有两个收藏夹,但是在我的查询中,我将被计数为1
最佳答案
用户一次只能将其标记为收藏帖子,因此总数始终为1。