En utilisant la méthode d'usine, vous pouvez envoyer une instance de Zend_Db_Select ou Zend_Db_Table_Select. Si votre classe étend Zend_Db_Table_Abstract, vous pouvez simplement créer une requête de sélection à partir de celle-ci, puis l'envoyer. Sinon, vous pouvez créer une instance et l'envoyer, voir l'exemple de la documentation :
$adapter = new Zend_Paginator_Adapter_DbSelect($db->select()->from('posts'));
$adapter->setRowCount(
$db->select()
->from(
'item_counts',
array(
Zend_Paginator_Adapter_DbSelect::ROW_COUNT_COLUMN => 'post_count'
)
)
);
$paginator = new Zend_Paginator($adapter)
http://framework.zend .com/manual/en/zend.paginator.usage.html#zend.paginator.usage.dbselect