Добавить значение счетчика в запрос SQL? - PullRequest
0 голосов
/ 27 декабря 2018

Я создаю страницу форума, используя 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.Моя цель состоит в том, чтобы добавить число подписчиков на пост к запросу, получающему все посты по категориям.Как этого достичь только одним запросом?

1 Ответ

0 голосов
/ 27 декабря 2018

Добавьте следующее 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 в свой список SELECT

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...