1000 enregistrements maxi ? c'est rien du tout Je te conseilles de minimiser les requetes, le temps que tu va perdre sous php sera largement recupéré par la requete simplifié
Le 3 août 2011 à 15:32, LeDabe <goo...@ledabe.net> a écrit : > Le 03/08/2011 17:19, g...@vandencruche.fr a écrit : > > Le volume de données est il important ? > > il y a une table principale qui peu aller de 10 a quelques centaines de > lignes > jointe a une table secondaire qui rajoute quelques lignes par > enregistrements (que je totalise justement) > > voici ma requete a ce jour > > $q=$this->createQuery("t") > ->select("t.id, t.datedocument, t.libelle, > t.montantNeg, t.montantPos, > s.nomlong, s.nom, > f.nom, f.nomlong, > l.nom, l.nomlong, > SUM(c.montantNeg)+SUM(c.montantPos) AS somme_ech, > > t.montantPos+t.montantNeg-SUM(c.montantNeg)-SUM(c.montantPos) AS solde > ") > ->leftJoin("t.SousFamille s") > ->leftJoin("s.Famille f") > ->leftJoin("t.TiersListe l") > ->leftJoin("t.EcheancesEcriture c") > ->orderBy("dateDocument") > ->groupBy("id"); > > Je souhaite donc filtrer sur solde, qui est un champs calculé > ainsi j'effectuais 2 fois la requetes. pour solde = 0 et solde != 0 > et j'avais en php plus qu'a gérer l'affichage en 2 passes. > > PS: J'ai du rajouter les leftjoin a la main car sans rien toucher > j'avais au moins 4 requêtes par lignes > et très vite des temsp de génération de plusieurs secondes. > les leftjoin on considérablement optimisé le temps > J'ai rajouté par habitude la selection des champs utiles dans le select > > -- > 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 > -- 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