我正在尝试在Doctrine 2(Symfony2 Framework)中创建一个SQL查询,我需要一些帮助。 我在表Movie_Person中有两个表Movie和Person关系很多。
我想找一个电影中扮演的人。如此清晰的SQL应如下所示:
SELECT p.* FROM Person p WHERE EXISTS
(SELECT m.* FROM Movie_Person m WHERE p.id = m.person_id)
如何在Symfony2 + Doctrine2中写这个?
答案 0 :(得分:6)
取自the docs:
的示例$query = $em->createQuery('SELECT u.id
FROM CmsUser u
WHERE EXISTS (SELECT p.phonenumber
FROM CmsPhonenumber p
WHERE p.user = u.id)');
$ids = $query->getResult();
重要提示:请记住,这是 NOT SQL 。它是 DQL 。主要区别在于您对对象和属性进行操作,而不是数据库表和字段。