cs_math85
Messages postés58Date d'inscriptionlundi 7 janvier 2002StatutMembreDernière intervention26 janvier 2005
-
6 mai 2002 à 10:47
syndrael
Messages postés2378Date d'inscriptionlundi 4 février 2002StatutMembreDernière intervention29 décembre 2012
-
14 mai 2002 à 20:36
:question) Est il possible de selectionner dans une table access 10 champs au hazard sans doublons??
syndrael
Messages postés2378Date d'inscriptionlundi 4 février 2002StatutMembreDernière intervention29 décembre 201220 6 mai 2002 à 16:41
A vrai dire, tout dépend du nombre de lignes que tu récupères (important ou non)
<cfquery ... name="myQuery">
select Id,Champ1...
from Toto
</cfquery>
<cfset lId = ValueList(myQuery.Id)>
<cfset lIdLen = ListLen(lId)>
<cfset Idx = 0>
<cfset Nb = 10>
<cfloop condition="(Idx LT Nb) OR lIdLen GT 0">
<cfset Pipo = RandRange(1,lIdLen)>
<cfoutput>#myQuery.Champ1[Pipo]#</cfoutput>
<cfset lId = ListDeleteAt(lId,Pipo)>
<cfset lIdLen = lIdLen - 1>
<cfset Idx = Idx + 1>
</cfloop>
Mais c'est une solution de tete, je te conseille si tu as le temps de passer tout ça sous CFScript !!
Rastafa
Messages postés49Date d'inscriptionvendredi 29 mars 2002StatutMembreDernière intervention14 septembre 2004 7 mai 2002 à 04:00
Tu peux aussi le faire en SQL...
<CFQUERY name="TrouverClient" datasource="Cie">
SELECT TOP 10 noClient, nomClient
FROM [Clients]
ORDER BY Rnd(noClient);
</CFQUERY>
<CFDUMP var="#TrouverClient#">
(J'ai présumé que tu voulais afficher 10 enregistrements au hazard et non 10 champs )
syndrael
Messages postés2378Date d'inscriptionlundi 4 février 2002StatutMembreDernière intervention29 décembre 201220 8 mai 2002 à 14:46
100% d'accord avec toi. En full sql on peut faire plein de choses, mais tout dépend du SGBD et de la norme SQL. De plus, le Rnd peut te sortir le meme, d'ou probleme...
S.
syndrael
Messages postés2378Date d'inscriptionlundi 4 février 2002StatutMembreDernière intervention29 décembre 201220 14 mai 2002 à 20:26
Grrrr !! J'aimais bien cette soluce avec le Rnd, mais manque de chance Rnd n'est po reconnu sous SQL Server. Kelk'un connait son équivalent sous SQL Server ??
Pfff, je vais devoir sortir ma soluce...
S.
Vous n’avez pas trouvé la réponse que vous recherchez ?