AR для сложных запросов

Коллеги, требуются ваши мозги )

Допустим, есть сложный запрос (с подзапросами, группировками и агрегатными функциями).

Хочется результат выполнения этого запроса выводить штатными средствами (с пагинацией, лимитом, ООП и прочими прелестями жизни.

Соответственно, возникает вопрос, как этого можно достичь.

Например, один из вариантов: создать DB-вьюху и на нее нацепить модель.

Работает отлично, пока не требуются дополнительные параметры фильтрации по содержимому группируемых полей.

(т.е. SELECT * from MyView WHERE myAggregateField IN (…) не сработает, поскольку группировка уже произошла)

Что посоветуете?

Не пойму а чем CDbCriteria не подходит ?

Возможно подходит, а я просто туплю.

Можно пример кода, создающего запрос а потом выгребающего оттуда данные, с возможностью применения стандартной сортировки?

Да запросто:




$criteria=new CDbCriteria(array(

	'with'=>array(

		'category',

		'content.author',

	),

	'condition'=>'content.isPublished',

	'order'=>'t.title',

));


$organizations=Organization::model()->findAll($criteria);



Пример без агрегатных функций, но добавить оные в параметры CDbCriteria не проблема. Вы бы более подробно задачу описали, можно даже с запросом на SQL, вам помогут это грамотно перевести на AR. А он в Yii очень мощный и решает 90% задач любой сложности.