Я использую свободный интерфейс для создания объекта / запроса Zend DB Select. В качестве части запроса я хотел бы выбрать произвольную строку, такую как «SELECT» foo «AS» типа «FROM ...». foo это не столбец, это просто строковый литерал.
Когда я выбираю произвольное число, запрос работает как положено. Когда я изменяю его на строку, Zend пытается трактовать foo как столбец и выдает ошибку:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'l.foo' in 'field list'
Я пытался обернуть строку в Zend_Db_Expr различными способами, такими как:
$select->columns(array('type' => new Zend_Db_Expr('foo')));
Это мешает Zend добавить имя корреляции, но все равно обрабатывает его как столбец:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'foo' in 'field list'
Я чувствую, что, должно быть, здесь что-то упущено. Как мне сказать Зенду прекратить рассматривать это как столбец?