requete pour faire un classement

requete pour faire un classement - SQL/NoSQL - Programmation

Marsh Posté le 25-10-2004 à 16:55:07    

Bonjour,  
 
Je prépare actuellement un site web qui permettra de consulter de nombreuse statistiques footballistique sur le net.
J'utuilise pour cela Php et MySql mais je bloque sur la facon de creer le classement.
 
En effet j'ai actuellement 4 tables :  

1- buts  
2- effectifs  
3- equipe
4- matchs


 
Qui sont faites de la manière suivante :
buts :  


Champ           Type            Null    Défaut
idbut           smallint(6)     Non      
idjoueur        smallint(6)     Non     0  
idequipe        tinyint(4)      Non     0  
idmatch         smallint(6)     Non     0  


effectifs :  


Champ           Type           Null          Défaut
idjoueur        smallint(5)    Non
nom             varchar(30)    Non    
prenom          varchar(30)    Non    
date-naissance  date           Non           0000-00-00  
equipe          varchar(30)    Non    
matchsCar       smallint(6)    Non           0  
butsCar         smallint(6)    Non           0  


 
 
equipe :  


Champ           Type           Null           Défaut
idequipe        tinyint(3)     Non    
nomEquipe       varchar(50)    Non    


 
matchs :


Champ           Type           Null          Défaut
idmatch         smallint(5)    Non    
date            date           Non           0000-00-00  
journée         tinyint(3)     Non           0  
equipedom       tinyint(4)     Non           0  
equipeext       tinyint(4)     Non           0  
scrEqDom        tinyint(4)     Non           0  
scrEqExt        tinyint(4)     Non           0  


 
 
Ce que je cherche actuellement à faire c'est le classement général le plus simple possible, c'est à dire afficher les équipes selon leur nombre de points (du plud grand au plus petit ).
Seulement pour cela, il faut que je calcule ce nombre de points cad que je trouve le nombre de matchs gagnés par l'équipe, que je le multiplie par 3 (nbre de points pour un matchs gagnés ... ...)
Mais je ne vois pas comment faire tout ces calculs (calculer le nombre de matchs gagnés en fonction des scores des matchs puis calculer le nombre de points en fonction du nombre de matchs gagnés ...
Je ne sais pas comment m'y prendre, alors si vous avez une petite idée, elle est la bienvenue et si vous voulez plus de précisions, je me ferais un plaisir de vous les donner !  
 
Merci d'avance .


Message édité par john8585 le 25-10-2004 à 17:08:36
Reply

Marsh Posté le 25-10-2004 à 16:55:07   

Reply

Marsh Posté le 25-10-2004 à 20:08:00    

Quelle version de mysql ?
 
Je te propose de faire d'abord une liste des scores de toutes les équipes, ordonnée par équipe. Ensuite, c'est au choix :
- tu peux soit finir en php, en traitant chaque ligne renvoyée pour analyser le résultat et déduire le nombre de points,
- ou alors te plonger dans la doc mySql, qui doit probablement contenir une fonction te permettant d'associer à une variable son signe, puis au signe, une valeur ...
 
en gros, il faut regarder pour chaque match de chaque équipe, le signe de : ("le score de l'équipe" - "le score de l'équipe adverse" ), et associer à ce résultat soit la valeur 0 (si c'est négatif), soit 1 (si c'est nul), soit 3.
 
Avec Oracle, ça se fait assez simplement, mais parce qu'on peut utiliser des requêtes imbriquées ... ce qui n'est pas le cas des anciennes version de mySql.

Reply

Marsh Posté le 25-10-2004 à 22:44:34    

en fait j'ai résolu mon problème, j'ai fait quelquechose qui resemble à ca mais tt en php.

Reply

Sujets relatifs:

Leave a Replay

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