====== lmbSQLCriteria ====== Класс **lmbSQLCriteria** инкапсулирует условие для sql-запроса "как есть as is". Также lmbSQLCriteria содержит набор статических фабричных методов для создания экземплятор класса [[lmbsql_field_criteria|lmbSQLFieldCriteria]] и [[lmbsql_field_between_criteria|lmbSQLFieldBetweenCriteria]]. lmbSQLCriteria наследуется от абстрактного класса lmbSQLBaseCriteria. Пример: $criteria = new lmbSQLCriteria('is_approved = 1'); Список статических фабричных методов: * **objectify($args)** - делает объект класса lmbSQLCriteria из $args, если $args является строкой. * **create($raw_sql = '1 = 1', $values = array())** - возвращает объект класса lmbSQLCriteria. Аналог вызова конструктора. Используется для chain-операций, так как php-не поддерживает chaining после вызова конструктора. * **between($column, $value_from, $value_to)** - возвращает экземпляр класса [[lmbsql_field_between_criteria|lmbSQLFieldBetweenCriteria]]. * **in($column, $values)** - аналог "new lmbSQLFieldCriteria($column, $values, lmbSQLFieldCriteria :: IN)" * **equal($column, $value)** - аналог "new lmbSQLFieldCriteria($column, $value)" * **like($column, $value)** - аналог "new lmbSQLFieldCriteria($column, $value, lmbSQLFieldCriteria :: LIKE)" * **isNull($column)** - аналог "new lmbSQLFieldCriteria($column, null, lmbSQLFieldCriteria :: IS_NULL)" Пример: $criteria = lmbSQLCriteria :: objectify('is_appoved = 1'); $criteria->addAnd(lmbSQLCriteria :: between('date', $date_start, $date_end)); Пример цепочного вызова(chaining): $criteria = lmbSQLCriteria :: create('is_appoved = 1')->addAnd(lmbSQLCriteria :: between('date', $date_start, $date_end)); см. также [[intro_to_query_and_criteria|Использование классов из подсистем Query и Criteria]] и [[Criteria|подсистема Criteria]].