Ich bin sicher nicht der erste der sich fragt, wie Subselects im Zend Framework gelöst sind!
Hier also eine kleine Anleitung zu Zend DB - Subselects:
$subselect = $this->_db->select()
->from('A')
->where('x=?', $x)
$select = $this->_db->select()
->from(array('t1' => $subselect), array('id' => 't1.id', 'name' => 't1.name', 'date' => 't1.date'))
->joinLeft(array('t2' => 'abc'), 't2.project_id=t1.id', array('xyz' => 't2.id'))
->where('t2.type=?', $y)
->order(array('t1.sort ASC', 't2.sort ASC'));
$rows = $this->_db->fetchAll($select);
?>