2013-12-03 4 views
0

Я хотел бы выразить следующий SQL запрос в Symfony 1.4 с помощью Doctrine в Query Builder:SQL EXISTS состояние в Symfony 1,4

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

Как я могу выразить "где есть ....." состояние?

ответ

2

Вы можете использовать инструкцию существования в том месте, где условие, как и другие условия. В вашем случае это будет выглядеть примерно так:

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(); 
+0

Это сработало. Спасибо! –