doctrine:获取父列表在列表中的所有对象

时间:2012-02-16 09:26:37

标签: doctrine-orm dql

假设我有两个对象articlecomment。我想做的是获取所有注释,article.id是IN(1,2,3,4)。实现它的最佳方法是什么?我被迫使用JOIN吗?现在我有这样的事情;

dql = "SELECT c FROM Comment c LEFT OUTER JOIN c.article a WHERE a.id IN :articles ORDER BY a.id ASC";
$query = $this->entityManager->createQuery($dql);
$query->setParameter("articles", array(1,2,3,4));

我没有测试过这个查询,但我相信这样的东西应该可以工作,但写一些像c.article IN文章(没有JOIN)会很可爱

1 个答案:

答案 0 :(得分:0)

这确实有效,AFAIK:

SELECT c FROM Comment c WHERE c.article IN(:articles)
$query->setParameter('articles', array(1,2,3,4));