Frage

Ich möchte die folgende SQL -Abfrage in Symfony 1.4 mit dem Query Builder von Doctrine ausdrücken:

select `user_agent`
from ticket
WHERE EXISTS (SELECT *
          FROM log
          WHERE ticket.id = log.ticket_id AND log.task_id = 1)

Wie kann ich den Zustand "Wo existieren ....." ausdrücken?

War es hilfreich?

Lösung

Sie können eine Anweisung in der Klausel als andere Bedingungen verwenden. In Ihrem Fall würde es ungefähr aussehen wie:

Doctrine_Core::getTable('ticket')->createQuery('t')
    ->select('user_agent')
    ->addWhere('exists(select * from log l where l.ticket_id = t.id AND l.task_id = 1')
    ->fetchArray();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top