IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Procédural MySQL Discussion :

Tirage aléatoire dans une base donnée


Sujet :

SQL Procédural MySQL

  1. #1
    Membre actif
    Inscrit en
    Janvier 2006
    Messages
    1 220
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 220
    Points : 262
    Points
    262
    Par défaut Tirage aléatoire dans une base donnée
    Bonjour,

    J'ai inséré des noms dans une base de données et je voudrais savoir s'il existe des fonctions pour faire des tirages aléatoires sur des noms. Comme créer un tournoi de tennis à partir de noms insérer dans une base.

    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    Par exemple, pour retirer 2 noms de façon aléatoire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT nom FROM personne ORDER BY RAND() LIMIT 2

  3. #3
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Plus complet: le tirage de toutes les équipes de manière à organiser un championnat:
    http://www.developpez.net/forums/viewtopic.php?t=425605

  4. #4
    Membre actif
    Inscrit en
    Janvier 2006
    Messages
    1 220
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 220
    Points : 262
    Points
    262
    Par défaut
    ok j'ai vu et cela marche bien juste un petit détail voilà ma requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO qualification (qualification.nom) SELECT joueur.nom FROM joueur, classement where joueur.nom = classement.nom and classement.position between 1 and 16 ORDER BY RAND() limit 8;
    En fait là je veux sélectionner au hasard 8 joueur classé entre la 1ère et la 16ème place. Il m'affiche toujours les même noms et seulement 2 noms en plus. Si j'enlève la partie avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    and classement.position between 1
    il me met bien 8 noms au hasard mais pas qui peuvent être classé au délà des 16 premiers. Alors qu'est ce qui ne marche pas dans ma requête

  5. #5
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Je crois que tu n'as pas compris le fait que dans mon script:
    - d'abord je tire les joueurs au hasard (et les insère dans la table temporaire)
    - j'organise les joueurs par paires (la requête avec une jointure)

    Cela t'as d'ailleurs été expliqué par d'autres (debug en particulier) sur un autre sujet (que tu as ouvert un peu tard.)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Recherche aléatoire dans une base de données SQL
    Par tibo894 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/06/2009, 10h58
  2. insetion dans une base données
    Par dingamnodjinadji dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/10/2008, 13h53
  3. créer une série de chiffre aléatoire dans une plage donnée, sans doublon
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 4
    Dernier message: 02/07/2008, 10h02
  4. Insérer dans une base donne mysql
    Par kh12040 dans le forum C
    Réponses: 3
    Dernier message: 12/06/2008, 19h55
  5. Réponses: 3
    Dernier message: 10/03/2008, 23h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo