я не знаю, если его возможно, но я хотел бы сделать это объект Zend_Db_Select, и я не знаю, какКак создать Zend_Db_Select с вложенными запросами?
SELECT *
FROM MyTable MT1
WHERE MT1.date = (
SELECT MAX(MT2.date)
FROM MyTable MT2
)
я не знаю, если его возможно, но я хотел бы сделать это объект Zend_Db_Select, и я не знаю, какКак создать Zend_Db_Select с вложенными запросами?
SELECT *
FROM MyTable MT1
WHERE MT1.date = (
SELECT MAX(MT2.date)
FROM MyTable MT2
)
Может быть что-то подобное будет работать:
$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() . ')')
);
You может также сделать это, просто заменив переменную подзапроса() в основном запросе (подробнее: https://stackoverflow.com/a/1341463/216084)