Ошибка при объединении таблиц с помощью Zend_Db

Почему я получаю это:

An error occurred

Application error

Exception information:

Message: Select query cannot join with another table

при попытке присоединиться к двум таблицам?

У меня есть этот код строки внутри моей модели, которая расширяет Zend_Db_Table_Abstract

public function getProjects() {
    $select = $this->select()
            ->from(array('sub' => $this))
            ->join(array('main' => 'main_projects'), 'main.mai_id = sub.mai_id');
    return $this->fetchAll($select);
}

И я использую это в своем контроллере: $this->view->entries = $this->sub_projects->getProjects();

Почему, черт возьми, я получаю эту ошибку? Я просто хочу сделать простое соединение

SELECT sub.*, main.mai_title FROM sub_projects AS sub INNER JOIN main_projects AS main ON sub.mai_id = projects.mai_id;
enter code here

person Rodrigo Souza    schedule 20.09.2010    source источник


Ответы (1)


Я думаю, вот ваше решение и объяснение: http://www.mail-archive.com/[email protected]/msg24553.html Другое решение здесь: Перевод запроса для использования Zend_Db_Select

person greg0ire    schedule 20.09.2010
comment
затем я получаю: `SQLSTATE[42S02]: базовая таблица или представление не найдено: 1146 Таблица 'ccgss.object' не существует` - person Rodrigo Souza; 20.09.2010
comment
На самом деле мне также пришлось изменить $thisна имя таблицы - person Rodrigo Souza; 20.09.2010
comment
Хотя этот ответ теоретически может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. - person hichris123; 05.02.2014