我意识到 Zend DB,Left Join SQL 查询为 join 列返回 NULL。这是真的?

例如:

$selectmatchedtime = $this->dbo->select()
            ->from(array('v'=>'table1'))
            ->joinLeft(array('vc'=>'table2'),'vc.vid = v.vid');

为所有视频返回 null ...

最佳答案

问题是查询中的 vid 列属于两个表,但显然只能在结果集中存储单个值。要解决此问题,请为其创建别名,明确说明应使用哪个表:

$selectmatchedtime = $this->dbo->select()
            ->from(array('v'=>'table1'))
            ->joinLeft(array('vc'=>'table2'),'vc.vid = v.vid')
            ->columns(array('vid'=>'v.vid'));

关于php - Zend DB 左连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17102554/

10-11 01:42