我尝试从many-to-many
表中获取所有相关记录。
我有两张桌子:
post
包含id
和title
列。post2post
包含parent_id
和child_id
列。 post2post
在同一张桌子post
上有多对多的关系。
例如,如果post id=1
是父post id=2
和post id=3
parent_id child_id
1 2
1 3
当我选择post id=3
时,我应该post id=1
和post id=2
这是我的DQL
查询
SELECT p as post
FROM AppBundle:Post p
WHERE p in (
SELECT parent
FROM AppBundle:Post p2
LEFT JOIN p2.parentPost as parent
WHERE p2 = (:post)
)
OR p in(
SELECT child
FROM AppBundle:Post p3
LEFT JOIN p3.childPost as child
WHERE p3 = (:post)
)
我知道,这个查询无法正常运行,但这就是我能做的一切