Вывод самых комментируемых записей.

Статус
В этой теме нельзя размещать новые ответы.

Istergul

Создатель
Регистрация
19 Янв 2009
Сообщения
17
Реакции
0
Помогите решить проблему.
В базе есть две таблицы: записи и комментарии. Необходимо вывести 10 самых комментируемых записей.
В таблице с комментариями в каждой строке есть id записи, к какой крепится данный комментарий.

Как вывести 10 самых комментируемых записей?
 

отак поидее будет работать, должно вывести:
кол-во коментов в записи | id_записи
 
дампы таблиц в студию...
 
-=Xardas=- неправильно вы пишите
count(*) для одной таблицы в таком виде будт показывать количество коментариев вообще
Вот, мой вариант:
Код:
SELECT
	`t1`.`id` `id`,
	(SELECT COUNT(*) FROM `таблица_с_коментами` `t2` WHERE `t2`.`id_коментируемой_записи`=`t1`.`id`) `count_comments`
FROM `таблица_с_записями` `t1`
ORDER BY `count_comments` DESC
LIMIT 10;
 
Alternator, а можно, пожалуйста, уточнить, что в приведённом вами запросе есть `t1` и `t2`?
 
Alternator, а можно, пожалуйста, уточнить, что в приведённом вами запросе есть `t1` и `t2`?
это "короткие названия" таблиц `таблица_с_записями` и `таблица_с_коментами` соответственно.
 
-=Xardas=-, спасибо, теперь понятно =)
 
`t1` и `t2` есть алиасы для таблиц `таблица_с_записями` и `таблица_с_коментами` соответсвенно.
алиас - это более краткая запись для имени таблицы или поля, которую можно использовать в пределах запроса, где определены эти алиасы
алиасы можно определить так:
Код:
`длиное_имя_таблицы` AS `t1`
-- либо так:
`длиное_имя_таблицы_2` `t2`
-- теперь в запосе можно писать:
`t2`.`id`
-- вместо:
`длиное_имя_таблицы_2`.`id`
PS блин отвлекся во время набора этого поста, у на вопрос уже овтетили.
Все же оставлю потому что здесь более полно расписано
 
Alternator, Спасибо за разъяснение =) проблема уже решена =)
Тему можно закрывать.
 
count(*) для одной таблицы в таком виде будт показывать количество коментариев вообще

Неверно, при использовании группировки будет посчитано количество записей по группе. Если нужен только id записи, то вариант -=Xardas=- предпочтительнее, потому что при выборке использует одну таблицу.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху