Mysql
 sql >> Database >  >> RDS >> Mysql

Interrogare su una relazione molti-a-molti usando Doctrine con Symfony2

Puoi scrivere una query DQL per unirti come di seguito

$em = $this->getContainer()->get('doctrine')->getManager();
$repository = $em->getRepository('YourNamespaceYourBundle:User');
$query = $repository->createQueryBuilder('u')
    ->innerJoin('u.groups', 'g')
    ->where('g.id = :group_id')
    ->setParameter('group_id', 5)
    ->getQuery()->getResult();

La tua mappatura per groups proprietà in User l'entità gestirà la parte di join stessa, non è necessario menzionare la tabella di giunzione nella query DQL