Я пытаюсь построить сложный (хорошо ...) запрос с помощью Zend_Db_Table, где мне обоим нужно будет объединить исходную таблицу с дополнительной таблицей и получить дополнительную информацию из исходной таблицы с помощью zend_db_expr.
Однако с самого начала дела идут плохо. То, что я это, это:
$select = $this->getDbTable()->select(Zend_Db_Table::SELECT_WITH_FROM_PART)
->setIntegrityCheck(false);
$select->from( $this->getDbTable() , array(
'*' ,
new Zend_Db_Expr('`end` IS NULL as isnull') ,
new Zend_Db_Expr('`sold` IN (1,2,3) as issold') ,
) );
Zend_Debug::dump( $select->__toString() );exit;
Что приводит к этому:
SELECT `items`.*, `items_2`.*, `end` IS NULL as isnull, `sold` IN (1,2,3) as issold FROM `items`
INNER JOIN `items` AS `items_2`
Мне нужно, чтобы на данном этапе, прежде чем я выполню объединение с другой таблицей, будет
SELECT `items`.*, `end` IS NULL as isnull, `sold` IN (1,2,3) as issold FROM `items`
Мне не нужно внутреннее соединение с самим собой, мне просто нужно добавить эти два Zend_Db_Expr к вещам, которые должны быть выбраны, после чего я продолжу строить запрос с объединением и где и т. Д., Как
$select->joinLeft( ... )
->where(...)
Есть идеи? Приветствия.