我不知道它是否可能,但我想把它变成一个Zend_Db_Select对象,我不知道如何
SELECT *
FROM MyTable MT1
WHERE MT1.date = (
SELECT MAX(MT2.date)
FROM MyTable MT2
)
答案 0 :(得分:2)
也许这样的事情会起作用:
$nestedSelect = $db->select()->from(
array('MT2' => 'MyTable'),
new Zend_Db_Expr('MAX(MT2.date)')
);
$select = $db->select()->from(
array('MT1', 'MyTable')
)->where(
'MT1.date = ?', new Zend_Db_Expr('(' . $nestedSelect->toString() . ')')
);
答案 1 :(得分:0)
您也可以通过简单地替换主查询中的($this->select()
)子查询变量来执行此操作(更多:https://stackoverflow.com/a/1341463/216084)