CDbCriteria. Свойства
$criteria = new CDbCriteria();
$criteria->alias = 'tbl';
// string
// алиас (псевдоним) таблицы. Если не задан, будет использован 't'.
$criteria->condition = 'age>31 AND team=1';
// string
// условие запроса (соответствует оператору WHERE)
$criteria->distinct = true;
// boolean
// выбирает только различные записи (исключение дубликатов). Если установлено значение true, то условие SELECT будет заменено на SELECT DISTINCT
$criteria->group = 'projectID, teamID';
// string
// как группировать результаты запроса (соответствует оператору GROUP BY)
$criteria->having = 'SUM(revenue)<50000';
// string
// условие, которое должно быть использовано с GROUP-BY
$criteria->index = 'fullname';
// string
// имя атрибута AR, значение которого следует использовать в качестве индекса массива результата запроса. По умолчанию null, то есть результатный массив будет иметь целочисленный индекс, начиная с 0
$criteria->join = 'LEFT JOIN users ON users.id=authorID';
// string
// как "джойнить" другие таблицы
$criteria->limit = 20;
// integer
// параметр для ограничения количества строк в выборке. Если указано значение меньше 0, то вернет все записи
$criteria->offset = '';
// integer
// параметр для указания начальной строки выборки. Если меньше 0, то вернет записи, начиная с первой
$criteria->order = 'title ASC, timemod DESC';
// string
// сортировка результатов запроса (соответствует оператору ORDER BY)
$criteria->paramCount = 0;
// array
// глобальный счетчик анонимных связанных параметров. Данный счетчик используется для генерации имен анонимных параметров
$criteria->params = array(':name'=>'Dan', ':age'=>31);
// array
// список значений плейсхолдеров параметров запроса
$criteria->scopes = array('scopeName1','scopeName2');
// mixed
// группы условий, которые необходимо применить. В случае одной группы может использоваться как 'scopes'=>'scopeName'. Если же групп несколько, то используется как 'scopes'=>array('scopeName1','scopeName2')
$criteria->select = 'id, title';
$criteria->select = array('id', 'title');
// mixed
// поля для выборки(SELECT). Могут быть указаны строкой или массивом. По умолчанию '*', т.е. все поля
$criteria->together = true;
// boolean
// параметр, устанавливающий необходимость принудительного объединения таблицы, ассоциированной с этой связью, с другими таблицами. Этот параметр имеет смысл только для связей типов HAS_MANY и MANY_MANY.
// Если данный параметр равен true, зависимая таблица при запросе будет всегда объединяться с основной, то есть будет сделан один запрос даже в том случае, если к основной таблице применяется постраничная разбивка.
// Если параметр не установлен или равен false, тогда каждая связь HAS_MANY или MANY_MANY будет использовать отдельный SQL запрос для связанных данных, что может улучшить скорость выполнения запроса т.к. уменьшается количество выбираемых данных.
// Если данный параметр не задан, зависимая таблица будет объединена с основной только в случае, когда к основной таблице не применяется постраничная разбивка.
$criteria->with = array( 'author.profile', 'author.posts' );
// mixed
// список связанных объектов, которые должны быть загружены с самим объектом. Подробнее об использовании необходимо смотреть в документации метода CActiveRecord::with()
Спасибо! Не где не мог найти внятный список свойств с примерами!
ОтветитьУдалить