Pregunta

Me gustaría expresar la siguiente consulta SQL en Symfony 1.4 usando el constructor de consultas de doctrina:

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

¿Cómo puedo expresar la condición "donde existen ....."?

¿Fue útil?

Solución

Puede usar la declaración EXISTS en la cláusula Where como otras condiciones. En tu caso se vería algo así como:

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();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top