Bonjour,
Je prépare ma première requête en DQL, j'aimerais faire une requête bien spécifique dans un repository, et pour cela je dois appliquer 2 conditions à ma jointure.
Admettons le schéma suivant:
3 tables:
- Membre
- Adresse
- Animal
Voici les relations:
- Adresse <- ManytoOne -> Membre
- Animal <- ManyToOne -> Membre
Le but:
Récupérer les infos de l'adresse des membres, des membre eux même et de leur animal remplissant les conditions suivantes
- Adresse.etage = $etage
- Adresse.rue = $rue
- Membre.nom = $nom
- Membre.prenom = $prenom
Merci pour le coup de main !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $qb = $this->createQueryBuilder('a') ->where('a.rue = :rue') ->setParameter('rue', $rue) ->andWhere('a.etage = :etage') ->setParameter('etage', $etage); /*Je voudrais rajouter une condition dans la jointure ci-dessous, admettons 'prenom' */ $qb->join('a.membre', 'c', 'WITH', 'c.nom = :nom'); ->setParameter('nom', $nom); $qb->join('c.animal', 'd') ->addSelect('d.age');
Partager