#php #mysql #one-to-one
#php #mysql #один к одному
Вопрос:
У меня есть две таблицы в виде сообщений и комментариев. Каждая строка в таблице комментариев имеет идентификатор записи, к которой она принадлежит. Как я могу выбрать, например, наиболее прокомментированные десять сообщений?
Комментарии:
1. этот запрос очень прост. Вы что-нибудь пробовали? не просите кодировать для вас, это очень простой SQL.
Ответ №1:
Попробуйте это
SELECT p.id, COUNT(c.id) tot
FROM posts p INNER JOIN comments c
ON p.id = c.post_id
GROUP BY p.id
ORDER BY tot DESC
LIMIT 10
Комментарии:
1. @diEcho: о, моя вина… У меня был плохой день, и я этого не заметил … да, вы абсолютно правы,
LIMIT
идет до конца!! Большое спасибо
Ответ №2:
вы можете использовать group by для этого некоторого запроса, например
SELECT posts, count(comment) as total
from comments group by (post) order by total;
Комментарии:
1. Я думаю, что вам не хватает связи между таблицами, и вы выбираете комментарии, а не большинство сообщений с комментариями. Наконец, вы не попали в десятку лучших.