RAND() SQL, il compte ce qui est sortie ? - SQL/NoSQL - Programmation
Marsh Posté le 01-08-2005 à 14:54:39
ben si c'est rand() toutes les questions ont autant de chance de ressortir a chaque fois
Il est peu probable (statistiquement) que cela se produise si ta table est enorme mais c'est possible.
Si tu veux eviter un tel cas il te faut le gerer toi meme a mon avis
Marsh Posté le 01-08-2005 à 17:55:05
Oui si tu veux être sûr que chaque question ne sort qu'une seule fois, il faut que tu vérifies à chaque fois. Ca fait un truc du genre:
Code :
|
C'est pas optimisé mais ca marche...
Marsh Posté le 01-08-2005 à 18:03:27
tu peux tenter un truc :
ajoute un champ "déjà posé" dans ta table
Code :
|
ensuite, :
Code :
|
(avec $id = le numéro ressorti par la première question)
et enfin :
Code :
|
Ainsi, tu ne peux pas poser deux fois la même question.
Marsh Posté le 01-08-2005 à 18:12:51
Ya de l'ID Arjuna !
Mais je peut po ! Ya plusieurs utilisateurs qui se connectent en meme temps.
Pis j'aime pas trop modifier cette table la à chaque fois. Je crois que je vais pluto compter ce qui est sortie dans la session PHP, et comme à chaque question, les données sont reccup sur la base pour l'affichage, suffira de lui dire WHERE id<>XX.
Marsh Posté le 01-08-2005 à 18:14:52
Ohhhh _p1c0_,
tu vient de me donner une ID ! Ca allegera encore la requete !
Merci !
Marsh Posté le 01-08-2005 à 18:26:27
djfx a écrit : Ohhhh _p1c0_, |
Ben ça allège la requête, mais si t'as vraiment pas de chance, tu retombes toujours sur les mêmes question et tu boucles longtemps... C'est jouable si la table conient beaucoup plus de questions que tu ne veux en poser...
Marsh Posté le 01-08-2005 à 18:34:31
En fait je vais plutot faire le traitement des redondances sur le serveur, avec PHP !
Pi je ferais des requetes SQL avec id=X (X=numero jamais sortie)
Ca sera + simple, je reccup tt les ID des questions, puis je tri et random, et rulezzzzzzzzzz !
Marsh Posté le 01-08-2005 à 14:36:10
Bonjour,
je souhaiterai savoir si la fonciton RAND() de MySQL gere un compteur des elements sortis auparavant.
En gros, j'ai une grosse BDD, et je ne voudrai pas que la question X resorte plusieur fois. Alors la fonction gere t-elle ca, ou faut-il que je stock les numeros de questions sorties ?
Merci !
---------------
Pas oublier les glacons pour l'apero !!