Pet*_*ter 6 mysql null zend-framework zend-db-table
我正在尝试使用DbTable/model/mapper结构在Zend中的2个表上进行连接.如果,在我的映射器中,我这样做:
$select = $this->getDbTable()->select(Zend_Db_Table::SELECT_WITH_FROM_PART)
->setIntegrityCheck(false)
->join('images', 'images.oldFilename =
availablePictures.filename')
->where('images.ref IS NOT NULL');
$resultSet = $this->getDbTable()->fetchAll( $select );
Run Code Online (Sandbox Code Playgroud)
它就像一个魅力,但如果我用IS NULL而不是NOT NULL尝试相同的东西,我什么也得不到我应该得到几行的结果集,就像我在MySQL中直接尝试它一样
SELECT *
FROM (
`availablePictures` AS a
LEFT JOIN `images` AS i ON a.filename = i.oldFilename
)
WHERE i.`ref` IS NULL
Run Code Online (Sandbox Code Playgroud)
我得到印象Zend不喜欢我的IS NULL或我做错了什么?
Pet*_*ter 13
解决方案可以在Machine对我原帖的评论中找到.按照他的建议我注意到Zend创建了一个内连接,因为我使用了错误的select方法,所以:
$select = $this->getDbTable()->select(Zend_Db_Table::SELECT_WITH_FROM_PART)
->setIntegrityCheck(false)
->joinLeft('images', 'images.oldFilename =
availablePictures.filename')
->where('images.ref IS NOT NULL');
$resultSet = $this->getDbTable()->fetchAll( $select );
Run Code Online (Sandbox Code Playgroud)
是应该如何.
| 归档时间: |
|
| 查看次数: |
11664 次 |
| 最近记录: |