У меня есть две таблицы как посты и комментарии. Каждая строка в таблице комментариев имеет идентификатор сообщения, к которому она относится. Как выбрать, к примеру, десять наиболее комментируемых сообщений?
Попробуйте это
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
вы можете использовать для этого группу какой-то запрос типа
SELECT posts, count(comment) as total from comments group by (post) order by total;