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&apos;effectuais 2 fois la requetes. pour solde = 0 et solde != 0
> et j&apos;avais en php plus qu&apos;a gérer l&apos;affichage en 2 passes.
>
> PS: J&apos;ai du rajouter les leftjoin a la main car sans rien toucher
> j&apos;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&apos;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&apos;adresse
> symfony-fr+unsubscr...@googlegroups.com.
> Pour plus d&apos;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

Répondre à