Bonjour,

Je dispose d'un objet

A (Objet principal)
---> Set<B> (A contient un set d'objet B)
---> Set<C> (B contient un set d'objet C)

---> D (B contient u objet D)

J'essaie de faire une requete pour retourner les elements de A en passant comme critères de recherche des attribut de A, C, D

j'ai essayé un truc du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
select distinct a from A a
 left join a.bs b
 left join b.d d
 left join b.cs c
 
where
 
a.x = 'x' 
 
// autant de fois que je de critères pour la collection B
and b.d.y = 'y'
 
// autant de fois que j'ai des critères pour la collection C
and c.z = 'z'
Mon problème c'est que la requête me retourne les éléments a qui contiennent les critères mais pas dans le même B (c'est ce que je veux)

En gros je donne des critères pour B et je retourne tout les A qui ont dans leurs collection un B englobant de ce que je cherche

J'espère être un peu clair