【发布时间】:2011-09-02 04:10:08
【问题描述】:
我有这个 SQL 查询:
SELECT pais FROM pais LEFT OUTER JOIN users_has_pais ON pais.id = users_has_pais.pais_id WHERE users_has_pais.users_id = 100
我正在尝试使用 Zend_Db_Table 中的 leftJoin 方法在模型中编写类似的内容,但我不知道自己在做什么......我尝试过这样的事情:
$resultSetPais = Zend_Db_Table::getDefaultAdapter();
$some = $resultSetPais->select()
->joinLeft( array ( 'users_has_pais' => 'users' ),
'pais.id = users_has_pais.pais_id', 'pais' );
但事实是我不知道如何让它工作,这段代码只是返回适配器信息。
已解决:
$instance = Zend_Db_Table_Abstract::getDefaultAdapter();
$pais = $instance->select();
$pais->from(array('p' => 'pais'), array('p.pais') )
->join( 'users_has_pais', 'p.id = users_has_pais.pais_id' )
->where( 'users_has_pais.users_id = ?', $row->id );
$paisEntry = $instance->fetchCol($pais);
【问题讨论】:
-
将您的解决方案添加为答案并将其标记为已完成
-
感谢您让我注意到@Jaitsu,我没有早点这样做,因为我尝试回答几天前提出的另一个问题,但我做不到。实际上......直到明天我才能将我的答案标记为正确。
-
没问题,赞成的答案和问题自己解决
-
@Jaitsu,非常感谢 ;)
标签: zend-framework zend-db zend-db-table