Как правильно составить запрос?

У меня есть запрос:
"SELECT posts.id_post, posts.text_post, posts.photo, posts.created_at, 
users.id_user, users.login, users.name, users.surname, users.avatar
FROM `posts` 
INNER JOIN `users_connections` ON posts.id_user = users_connections.id_followed 
INNER JOIN `users` ON users.id_user = posts.id_user
 WHERE users_connections.id_follower = :id_follower 
AND `created_at` BETWEEN '$prewweek' AND '$nowdate' ORDER BY `created_at`"


Который выдает такой результат:
627d036317c9f457329785.png
Как сделать этот код так, чтобы справа в дополнительной колонке выводилось число лайков этого поста, вот таблица с лайками:
627d03d0b8a15147781055.png
Я сначала хотел сделать подзапрос, но что-то не особо получается. По аналогии с вашим решением я сделаю количество комментариев
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
rozhnev
@rozhnev Куратор тега PHP
Fullstack programmer, DBA, медленно, дорого
SELECT posts.id_post, posts.text_post, posts.photo, posts.created_at, 
users.id_user, users.login, users.name, users.surname, users.avatar
COALESCE(COUNT(`likes`.`id_post`), 0) AS `likes`
FROM `posts` 
INNER JOIN `users_connections` ON posts.id_user = users_connections.id_followed 
INNER JOIN `users` ON users.id_user = posts.id_user
LEFT JOIN `likes` ON `likes`.`id_post` = `posts`.`id_post`
 WHERE users_connections.id_follower = :id_follower 
AND `created_at` BETWEEN '$prewweek' AND '$nowdate' ORDER BY `created_at`
GROUP BY posts.id_post, posts.text_post, posts.photo, posts.created_at, 
users.id_user, users.login, users.name, users.surname, users.avatar
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы