Bonjour,
Je voudrais faire une sous-requête avec le querybuilder.
J'ai grand besoin d'aide car j'ai beaucoup de mal à trouver de la doc sur internet
Voici ma requête en sql (qui marche niquel) :
J'ai besoin que l'on m'explique comment traduire ceci avec le querybuilder.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SELECT vol. * , COUNT( place.id ) FROM vol INNER JOIN place ON place.vol_id = vol.id WHERE place.id NOT IN ( SELECT place_id FROM userplace ) GROUP BY ( vol.id )
J'essaie de faire ceci :
Parce que la ça me retourne : "Invalid PathExpression. Must be a StateFieldPathExpression"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $qb=$this->_em->createQueryBuilder() ->select('vol.id,vol.dateheuredep,vol.dateheurearr,vol.prix') ->addSelect('count(p.id) as nbp') ->from('EuropeVoyageBundle:vol','vol') //EVIDEMMENT C EST ICI QUE CELA POSE PROBLEME : ->join('vol.places','p','WITH','p.id NOT IN (SELECT u.place FROM EuropeVoyageBundle:Userplace u)') ->orderBy('vol.dateheuredep') ->groupBy('vol')
Voila j'ai cherché plusieurs façons de faire, je ne sais pas comment intégrer mon NOT IN (SELECT ...) comme je le veux
Merci d'avoir pour votre aide








Répondre avec citation
Partager