Je sèche sur un tri qui doit être facile ^^

Je sèche sur un tri qui doit être facile ^^ - SQL/NoSQL - Programmation

Marsh Posté le 02-07-2005 à 08:48:34    

Salut à tous.  
Alors voila, je suis un bidon en mysql et j'ai une bdd qui contient les champs suivants (c'est pour un jeu video :p):
numero_circuit (01,02....)
nom_circuit (circuit1, circuit2....)
temps (en millisecondes)
joueur (nom du joueur)
 
J'aimerai envoyer une requête qui me donne le meilleur temps pour chaque circuit en une seule requête :??:  
le truc c'est que j'y arrive pour un circuit bien défini mais pour chaque...
Je pensais à:
SELECT * FROM table ORDER BY numero_circuit,temps LIMIT 1
mais ça me rend que pour le 1er circuit...
Merci de me dire si c'est possible en une seule requête ou si je dois me taper une boucle(qui déstructurerait mon code ...)

Reply

Marsh Posté le 02-07-2005 à 08:48:34   

Reply

Marsh Posté le 02-07-2005 à 09:20:27    

c'est pas clair ton histoire
détailles un peu ton schéma de BD (tables et champs associé), stp

Reply

Marsh Posté le 02-07-2005 à 09:34:52    

Je vais te mettre sa structure mais j'ai peur de t'embrouiller sérieusement...
Tout d'abord c'est une bdd qui références des videos que des joueurs ont fait pour le jeu MarioKart Double Dash:
 

Code :
  1. #--------------------------------------------------------
  2. # Structure de la table `mkdd_vids`
  3. #--------------------------------------------------------
  4. CREATE TABLE `mkdd_vids` (
  5.   `ID` int(10) unsigned NOT NULL auto_increment, #clé
  6.   `num_circuit` varchar(5) NOT NULL default '', #numéro du circuit
  7.   `circuit` varchar(30) NOT NULL default '', #nom du circuit
  8.   `type` varchar(2) NOT NULL default '', # 2types possibles : 3L ou FL
  9.   `min` varchar(2) NOT NULL default '0', #minutes du chrono
  10.   `sec` varchar(2) NOT NULL default '0', #secondes du chrono
  11.   `frac`varchar(3) NOT NULL default '0', #millièmes du chrono
  12.   `temps`int(7) NOT NULL default '0', #chrono en millisecondes : = min*60000+sec*1000+frac
  13.   `frequence`varchar(4) NOT NULL default '', #fréquence de la video : 50hz ou 60hz
  14.   `nom` varchar(40) NOT NULL default '', #nom du joueur
  15.   `standard` varchar(10) NOT NULL default '', #sorte de grade qui juge la performance de la video
  16.   `ladate` date NOT NULL default '0000-00-00', #date à laquelle j'ai chopé la video
  17.   `wr` varchar(2) NOT NULL default '', #"ok" si c un record du monde, vide sinon
  18.   `fichier` varchar(90) NOT NULL default '', #nom du fichier video
  19.   `circuitypeid` int(4) NOT NULL default '0',# un id perso qui me sert à faire des trucs en marge...
  20.   KEY `ID` (`ID`)
  21. ) TYPE=MyISAM AUTO_INCREMENT=508 ;
  22. #--------------------------------------------------------
  23. # Contenu de la table `mkdd_vids`
  24. #--------------------------------------------------------
  25. INSERT INTO `mkdd_vids` VALUES ('1','01','Luigi Circuit','3L','1','15','835','75835','50hz','Rapha','GODTIME','2005-05-30',' ','01 - Luigi Circuit - 3L - 1''15''''835 - 50hz - Rapha.wmv','100');


 
Voilà je sais pas si tu veux que je te dise autre chose  :)


Message édité par damcmoi le 02-07-2005 à 09:38:42
Reply

Marsh Posté le 02-07-2005 à 10:15:18    

Essaies un  

SELECT circuit, MAX(temps) FROM mkdd_vids GROUP BY circuit


pour voir (vérifies la syntaxe, je "jette" ça comme je le sens là sans avoir vérifié) ...


Message édité par Zzozo le 02-07-2005 à 20:15:00

---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
Reply

Marsh Posté le 02-07-2005 à 10:22:26    

C'est super dans la bonne voie!
C'est pas encore ça mais je vais y arriver.
Je te tiens au courant dès que je l'ai. Merci bocou^bocou!

Reply

Marsh Posté le 02-07-2005 à 10:34:13    

SELECT circuit,MIN(temps) FROM mkdd_vids GROUP BY circuit ORDER BY circuit
 
Merci jsuis content ! Bon we ;)

Reply

Marsh Posté le 02-07-2005 à 12:24:49    

De rien :jap:


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed