Например:
Код: Выделить всё
$criteria = new CDbCriteria();
$criteria->join = 'тут какой либо join';
$criteria->join .= 'тут еще join';
$criteria->join .= 'Еще join';
$criteria->condition = 'тут условие или их может быть несколько';
$criteria->group = '`t`.id';
// здесь будет не правильно посчитано количество записей в итоге расчитается не вреное количество страниц
//group by будет откинут потому что если поставить count() он сгруппирует и количество тоже
$count=Article::model()->count($criteria);
$pages=new CPagination($count);
$pages->pageSize=10;
$pages->applyLimit($criteria);
// $models - этот массив получится уже с group by;
//количество элементов будет меньше чем насчитал пагинатор
$models = Post::model()->findAll($criteria);
http://www.yiiframework.com/doc/api/1.1/CPagination пример тут