Выражения
Построитель запросов Select поддерживает использование выражений в списке полей. Примеры выражений включают в себя «удвоенное поле возраста», «количество всех полей имени» и подстроку поля заголовка. Помните, что многие выражения могут использовать функции SQL, и не все функции SQL стандартизированы для всех баз данных. Разработчик модуля должен убедиться, что используются только выражения, совместимые с базами данных. (См. Список функций и операторов)
Чтобы добавить выражение в запрос, используйте метод addExpression().
$count_alias = $query->addExpression('COUNT(uid)', 'uid_count'); $count_alias = $query->addExpression('created - :offset', 'timestamp', array(':offset' => 3600));
Первая строка выше добавит «COUNT (uid) AS uid_count» к запросу. Второй параметр - это псевдоним для поля. В редком случае, когда псевдоним уже используется, будет сгенерирован новый, и возвращаемое значение addExpression() будет используемым псевдонимом. Если псевдоним не указан, будет сгенерировано значение по умолчанию «expression» (или expression_2, expression_3 и т. Д.).
Необязательный третий параметр - это ассоциативный массив значений заполнителей, которые используются как часть выражения.
Обратите внимание, что некоторые выражения SQL могут не функционировать, если они не сопровождаются предложением GROUP BY, добавленным с помощью $query->groupBy(). Разработчик должен убедиться, что сгенерированный запрос действительно действителен.