我正在使用MySQL作为数据库创建论坛页面,但是我来自MongoDB,有点困惑。当我获取特定类别的所有帖子时,看起来像这样
SELECT p.id, p.posted_at, p.title, p.content, c.name AS category_name, u.name
AS author_name
FROM posts AS p
INNER JOIN users AS u ON p.author = u.id
INNER JOIN categories AS c ON p.category = c.id
WHERE p.category = 3 <-- Category ID
人们可以关注帖子,因此我有一个名为user_post_relations的表,该表包含两列; user_id和post_id。 我的目标是为查询添加每个帖子的关注者数量,以获取每个类别的所有帖子。仅一个查询如何实现?
答案 0 :(得分:0)
将以下带有子查询的JOIN添加到您的查询中
JOIN (SELECT post_id, COUNT(*) follower_count
FROM user_post_relations
GROUP BY post_id) AS upr ON upr.post_id = p.id
然后将upr.follower_count
添加到您的选择列表中