sugarufc
@sugarufc

Как вывести количество комментариев к статье?

Имеются две таблицы в базе данных.
1-ая таблица со статьями (articles)0376ed32bdf8419cbe1e304befe50f21.jpg
2-ая с комментариями к этим статьям
071e159a66c64a93af7980863cebba75.jpg
Необходимо вывести количество комментариев к каждой статье, а у тех статей где нет комментариев указать 0
Вывожу всё это на главной странице сайта. Вот здесь (указано красной стрелкой)
21e885f5ccad46419cb23a1faf3a9684.jpg.
Как мне правильно это реализовать? Как сформировать правильный запрос к базе данных, чтоб потом все это можно было легко вывести при помощи цикла foreach ??
  • Вопрос задан
  • 688 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
Можно подзапросом выбрать кол-во комментариев сразу при выборке статьи.
select a.id, a.title, a.content,
       (select count(*) from comments where article_id=a.id) as comments_count
    from articles as a
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
LittleFatNinja
@LittleFatNinja
горе девелопер, любитель лютой садомии
SELECT count(*) from articles
Ответ написан
@AVKor
SELECT 
COUNT(comment_id)
FROM articles
LEFT JOIN comments
ON comments.article_id = articles.id
GROUP BY articles.id;

Это выводит только количество. Добавьте то, что ещё требуется выводить, в SELECT.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы