Zend DB fetchAll(): where-Klausel die array-mit IN-operator

Ich bin Auswahl der Datensätze aus einer Datenbank mit der entsprechende Abfrage:

SELECT * FROM reports WHERE user_id IN (3, 6, 22);

Den aufrufenden Funktion fetchAll() hat ein argument, das ein array von Benutzer-IDs, und dieser Aufruf funktioniert Prima:

$resultSet = $this->getDbTable()->fetchAll('user_id IN (' . implode(', ', $userIds) . ')');

Allerdings würde ich gerne ein array verwenden für die where-Klausel, denn es wird wohl noch andere Einschränkungen für die Abfrage später... und ich kann nicht herausfinden, für das Leben von mir. Ich dachte, es wäre eine variation des folgenden:

$resultSet = $this->getDbTable()->fetchAll(array('user_id IN ?' => '(' . implode(', ', $userIds) . ')'));

Aber bisher keine Würfel. Kann mir jemand die korrekte syntax hier?

InformationsquelleAutor der Frage Cyranix | 2010-02-17

Schreibe einen Kommentar