Модераторы: 2man
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> COUNT() в запросе в фреймворке Yii, COUNT() + GROUP BY в ActiveRecord 
:(
    Опции темы
ИстинА
  Дата 28.3.2015, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.9.2009

Репутация: нет
Всего: нет



Подскажите, пожалуйста, как сделать выборку из базы с агрегатной функцией COUNT?
Запрос нужен вот такой (выбрать все записи в блоге с количеством комментариев к каждой):
Код

SELECT p.*, COUNT(c.id) AS comment_count
FROM posts p LEFT JOIN comments c ON c.post_id = p.id
WHERE p.active = 1
GROUP BY p.id

Через $command = Yii::app()->db->createCommand() работает, но мне нужно через CDbCriteria, чтобы сделать постраничную навигацию.
Вот это не работает (хотя гугл утверждает обратное):
Код

$criteria->alias = "p";
$criteria->select = "p.*, COUNT(c.id) as comment_count";
$criteria->join = "LEFT JOIN comments c ON (c.post_id = p.id)";
$criteria->group = "p.id";
$criteria->order = 'date DESC';

Выдаёт только записи из таблицы постов, а колонка со счётчиком комментариев comment_count отсутствует.

Подскажите, как правильно? Заранее большое спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие движки / фрейморки | Следующая тема »


 




[ Время генерации скрипта: 0.1089 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.