Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1486 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Débutant] Requête Sql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Débutant] Requête Sql

n°1077035
Dhara
Posté le 09-05-2005 à 22:37:22  profilanswer
 

Tout dabord bonjour a tous, ceci est mon premier post sur le forum Hardware.fr :)
 
Voila après avoir chercher sur le forum et n'avoir rien trouvé qui s'y approche (mais j'ai peut être, même surement, mal cherché) je pose emon probleme ici.
 
Je possede 3 tables sous MySql: Joueurs (qui contient les infos des joueurs), joue (qui contient les pseudos et les equipes de joueurs) et jeux (qui contient les infos sur les jeux).
 
Structure: joueurs (num_joueur,nom_joueur...)
           jeux (num_jeux, nom_jeux...)          
           joue (num_joue, #num_joueur, #num_jeux, pseudo, equipe)
 
Mon probleme est: je n'arrive pas a faire une requete qui me permettrai de connaitre le jeux le plus joué (c'est à dire celui a qui le plus grand nombre de pseudo est associé). Une idée? Merci d'avance :)

mood
Publicité
Posté le 09-05-2005 à 22:37:22  profilanswer
 

n°1077097
zapan666
Tout est relatif
Posté le 09-05-2005 à 23:09:41  profilanswer
 

La jointure est ton ami.
(LEFT OUTER JOIN, RIGHT OUTER JOIN, RIGHT INNER JOIN, NATURAL JOIN, cf la doc mysql)
 

Code :
  1. SELECT COUNT(jeux.num_joueurs) FROM
  2. joueurs  NATURAL JOIN
  3. jeux  NATURAL JOIN         
  4. joue GROUP BY jeux.num_jeux ORDER BY
  5. COUNT(jeux.num_joueurs) ASC LIMIT 10


(format mysql)


Message édité par zapan666 le 09-05-2005 à 23:11:05
n°1077177
Dhara
Posté le 10-05-2005 à 00:43:26  profilanswer
 

Tout dabord merci pour ta reponse :)
 
Mais je ne voit pas ou tu veut en venir avec cette requete? a quoi sert limit 10 entre autre?
 
Désolé mes connaissances en la matière ne sont pas très élevés :(

n°1077413
inandjo
la faim justifie les moyens!
Posté le 10-05-2005 à 10:56:24  profilanswer
 

Je reponds pour zapan,
Limit sert a limiter ton resultset a juste dix elements.
En supposant que tu ais plus de 10 resultats pour ta requete, sa solution ne te donnera pas satisfaction.
Ceci fera plutot l'affaire:

Code :
  1. SELECT COUNT(jeux.num_joueurs) FROM 
  2. joueurs  NATURAL JOIN
  3. jeux  NATURAL JOIN         
  4. joue GROUP BY jeux.num_jeux ORDER BY
  5. COUNT(jeux.num_joueurs) DESC


 
Ainsi, le premier element du resultset sera celui que tu cherches. A toi ensuite de prendre ce premier element.

n°1077811
Dhara
Posté le 10-05-2005 à 14:26:06  profilanswer
 

Merci beaucoup :)
 
Mais a chaque fois que je l'utilise 1)elle ne veut pas s'executer puisque jeux.num_joueurs n existe pas mais je suppose que vous vouliez dire joue.num_jeux
                                    2) l'utilisation de la clause group est invalide :'(
 
Moi qui voulait juste connaitre le jeux le plus joué ben je suis pas sortit ^^


Message édité par Dhara le 10-05-2005 à 14:57:49
n°1077981
inandjo
la faim justifie les moyens!
Posté le 10-05-2005 à 15:52:16  profilanswer
 

Dhara boy,
 
tu as un debut de piste au moins, a partir de la, tu pourras voir, faire des essais et adapter les codes fournis au situations precises que tu auras!!!


---------------
The bible was written by people who believed the earth was flat!
n°1078205
Dhara
Posté le 10-05-2005 à 17:40:27  profilanswer
 

je suis tout a fait daccord avec toi mais mon interrogation en reponse a ton message etait plutot: pourquoi group est invalide et pas "filé moi le bon code" ^^

n°1078410
zapan666
Tout est relatif
Posté le 10-05-2005 à 20:37:34  profilanswer
 

Parce que il faut selectionner les champs que l'on groupe. (enfin, si je me souviens bien)  
 

Code :
  1. SELECT jeux.num_joueurs COUNT(jeux.num_joueurs) FROM 
  2. joueurs  NATURAL JOIN 
  3. jeux  NATURAL JOIN           
  4. joue GROUP BY jeux.num_jeux ORDER BY 
  5. COUNT(jeux.num_joueurs) DESC


 
http://dev.mysql.com/doc/mysql/en/ [...] tions.html


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Débutant] Requête Sql

 

Sujets relatifs
[Debutant] Construire une requeterequete mysql pour gerer un planning
Problème avec requète sur 2 champs ...Contraintes en SQL
Requete en LIKE sous VBAmenu deroulant et requete
lexique SQLRequete SLQ/php avec LIKE
SQL | Requete de débutant, mais je bug !!![PHP] Prob requête SQL... (débutant)
Plus de sujets relatifs à : [Débutant] Requête Sql


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR