在Doctrine Symfony中使用UNION进行SQL查询

Hof*_*ter 5 sql pagination doctrine symfony-1.4

我有一个关于在Doctrine Symfony中翻译SQL查询的问题.我想做一件事:

SELECT m.*
FROM member m
INNER JOIN (
  SELECT id_member
  FROM friend
  WHERE id_friend=99
  UNION
  SELECT id_friend
  FROM friend
  WHERE id_member=99
) a ON m.id=a.id_member 
WHERE m.visible=1
Run Code Online (Sandbox Code Playgroud)

在该示例中,我搜索用户99的所有朋友.

我的桌子:

成员:(id,name,visible)
朋友:(id,id_member,id_friend,active)

精度:我想使用Symfony寻呼机.

一个办法 ?谢谢 !

Man*_*eUK 5

DQL中不支持UNION,但您可以使用RAW SQL - >发出查询

$q = Doctrine_Manager::getInstance()->getCurrentConnection();
$result = $q->execute(" -- RAW SQL HERE -- ");
Run Code Online (Sandbox Code Playgroud)