Sachant que cela va servir pour une seul requête, c'est chiant ? En plus c'est la même table, elle est juste triée, n'y a-t-il pas une autre solution.
Cyril FLIELLER 2011/8/24 Simon Leblanc <leblanc....@portailpro.net> > Le 24/08/2011 15:37, Cyril Flieller a écrit : > >> J'ai un petit souci avec une requête SQL que je dois traduire den DQL. >> J'ai lu sur un forum qu'il était impossible dans un FROM d'avoir une >> requête imbriquée car Doctrine n'acceptait que les tables du Modèle, ce >> qui me semble assez logique, mais j'imagine que l'on peut contourner >> cela. Voilà ma requête : >> >> SELECT * >> FROM operation o >> LEFT JOIN ( >> SELECT * >> FROM operation_history >> ORDER BY ohdate DESC >> ) AS oh ON i.id <http://a.id/> = oh.operation_id >> LEFT JOIN user u ON u.id <http://p.id/> = o.user_id >> LEFT JOIN member_group mg ON u.id <http://p.id/> = mg.user_id >> >> WHERE mg.group_id = 2 >> GROUP BY o.id <http://a.id/> >> >> HAVING oh.status_id = 1 >> >> > Bonjour, > > > sans trop regarder si tu peux passer par une autre solution, la solution > pour avoir le SELECT dans ton FROM pourrait être trouvée en passant par une > vue normalement. > > Tu crées une vue SQL avec ta requete "SELECT * FROM operation_history ORDER > BY ohdate DESC" et tu crées un modèle pour ta vue. > > Une fois que tu as ton modèle, tu peux l'utiliser dans ta requête d'origine > : > SELECT * > FROM operation o > LEFT JOIN ma_vue AS oh ON i.id = oh.operation_id > > LEFT JOIN user u ON u.id = o.user_id > LEFT JOIN member_group mg ON u.id = mg.user_id > WHERE mg.group_id = 2 > GROUP BY o.id > HAVING oh.status_id = 1 > > > > Cordialement, > Simon Leblanc > > -- > Vous recevez ce message, car vous êtes abonné au groupe Google > Groupes Symfony-fr. > Pour envoyer un message à ce groupe, adressez un e-mail à > symfony-fr@googlegroups.com. > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse > symfony-fr+unsubscribe@**googlegroups.com<symfony-fr%2bunsubscr...@googlegroups.com> > . > Pour plus d'options, consultez la page de ce groupe : > http://groups.google.com/**group/symfony-fr?hl=fr<http://groups.google.com/group/symfony-fr?hl=fr> > > -- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. Pour envoyer un message à ce groupe, adressez un e-mail à symfony-fr@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com. Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr