lemmings
Messages postés51Date d'inscriptionjeudi 11 octobre 2001StatutMembreDernière intervention14 novembre 2005
-
3 oct. 2005 à 09:55
cs_bastoun
Messages postés164Date d'inscriptiondimanche 1 octobre 2000StatutMembreDernière intervention23 mars 2007
-
8 oct. 2005 à 00:27
salut à tous,
je voudrais savoir comment connaitre le nbr de record que mon query va sortir dans le cas suivant et a l'emplacement précisé :
<cfoutput query="toto" group="col1">
<cfoutput group="col2">
je voudrais connaitre le nbr de boucle qu'il va faire ici mais avant qu'il ne les fasses faire une sorte de recordcount mais limité a un group du cfoutput.
<cfoutput>
</cfoutput>
</cfoutput>
</cfoutput>
le recordcount ne fonctionne que sur le query principal.
cs_bastoun
Messages postés164Date d'inscriptiondimanche 1 octobre 2000StatutMembreDernière intervention23 mars 20071 8 oct. 2005 à 00:27
Plusieurs solutions possibles :
-tu fais tes cfoutput dans un cfsavecontent et tu utilises un compteur
quelconque. le problème dans ce cas est qu'il effectue quand même la
boucle, même si tu ne l'affiches pas tout de suite.
-tu fais une requete de requete (cfquery dbtype=query), avec un
count et un group by sur les bonnes colonnes. ça limite le nombre
d'accès à ta base de données, mais prend un peu de mémoire et de temps
(enfin... ça dépend par rapport à ton référetniel, mais cela peut
prendre plusieurs centièmes ou dixièmes de secondes).
-tu fais une première requete pour compter par groupe (count, group
by.. etc..) : cela t'obliges à faire au moins deux requetes : celle de
comptage et celle pour resortir tes tuples, bien que tu puisses
éventuellement ne pas l'effectuer si tu ne souhaites pas
l'afficher pour une raison ou une autre.
-je pense qu'il y a d'autres solutions, mais bon, il est un peu tard...