Réaliser un tirage au sort de n enregistrements

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Réaliser un tirage au sort de n enregistrements

par doctorrock » 15 sept. 2008, 09:32

array_rand aussi

par jojolapine » 14 sept. 2008, 19:47

Par contre niveau performance, je suis pas sûr que ce soit le top, mais bon le tirage au sort, n'est pas fait toutes les minutes ;)

par jay64 » 14 sept. 2008, 19:42

Sinon tout en mysql, tu fait comme ceci:

Code : Tout sélectionner

SELECT [...] INTO [...] WHERE [...] ORDER BY RAND() LIMIT(0,5)
;)
ORDER BY RAND ! => Je ne connaissais pas ! SUPER comme solution, je teste ça de suite !

par jojolapine » 14 sept. 2008, 18:06

Sinon tout en mysql, tu fait comme ceci:

Code : Tout sélectionner

SELECT [...] INTO [...] WHERE [...] ORDER BY RAND() LIMIT(0,5)
;)

par orgerix » 14 sept. 2008, 16:45

Tu peux mettre tes résulats dans un tableau indexé numériquement puis utliser la fonction rand() n fois. Ensuite, il ne reste qu'a extraire les resulatats correspondant aux clefs tirés.

Réaliser un tirage au sort de n enregistrements

par jay64 » 14 sept. 2008, 16:38

Bonjour,

Voici un exemple pour mieux comprendre :

Imaginons un recordset qui contient 100 enregistrements.
Je voudrais tirer au hazard 5 d'entre eux.
Cela pour ensuite rentrer en contact avec les gagnants et effectuer d'autres traitements.


Ma question est donc la suivante : comment sortir n enregistrements d'une requete qui retourne x résultats ?

Merci !