我在Doctrine中有两个实体:Post和Comments之间的oneToMany。评论归用户所有。我想检索特定用户拥有至少一条评论的所有帖子和评论。使用Doctrine的查询生成器实现这一目标的正确方法是什么?
$em->createQueryBuilder('p')
->innerJoin('p.comments','c')
->having(AT LEAST ON c.user = :user)
->where(p.id = :idPost)
你能帮助我吗?
答案 0 :(得分:1)
这是一个解决方案:
$query = $em->createQueryBuilder('p')
->leftJoin('p.comments','c')
->where('c.user = :user')
->andwhere('p.id = :idPost')
->setParameter('idPost', '1')
->setParameter('user', 'Toto')
;
return $query->getQuery()->getResult();