Requete DQL avec EXIST et NOT EXISTS
Bonjour,
je viens à vous car j'ai un soucis sur une requête DQL.
J'ai une liaison Many to Many entre :
Entité1<-----Entité2
Et une liaison Many to One entre :
Entité2----->TypeEntité2
TypeEntité2 :
id
type
Dans ma requête je dois récupérer les Entité1 où ils n'existe pas Entité2 qui a un type = A et un type = B.
Alors voila l'idée de ma requête :
Code:
1 2 3 4 5 6 7 8
| SELECT e1.id
FROM BoiteProjetBundle:Entite1 e1
WHERE NOT EXISTS (
SELECT e2.id
FROM BoiteProjetBundle:Entite2 e2
JOIN e2.TypeEntité2 te2
WHERE e2.Entite1 = e1.id AND te2.type = 'A' OR e2.Entite1 = e1.id AND te2.type = 'B'
) |
Mais j'ai une erreur du style :
Code:
1 2
| Error: Invalid PathExpression. StateFieldPathExpression or S
ingleValuedAssociationField expected. |
Je me suis inspiré de l'exemple de la doc de doctrine2 mais il semble que pour une liaison many to many ça fonctionne pas et je commence à être a court d'idée et sur le net j'ai trouvé aucun exemple de la sorte.
Si quelqu'un peut me sortir de cette mélasse, je serai fan !