Requête

jjg65 Messages postés 28 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 16 août 2011 - 24 sept. 2008 à 01:25
themessenger Messages postés 45 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 5 janvier 2009 - 28 sept. 2008 à 16:04
Chers membres,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>





Je souhaiterais pouvoir résoudre un problème spécifique en ce qui concerne une requête sql.





A partir d'une table de type Access je voudrais opérer un classement tel qu'on peut le trouver dans le monde du football par exemple.





Imaginez une table contenant ce style de données.






 






Equipe            Journée  Victoire    Défaite      Nul      Points     






 






Equipe A              1        1               0                   0           3





Equipe B              1        0               1                   0           0                





Equipe C              1        0               0                   1           1





Equipe D              1        0               0                   1           1





Equipe A              2        0               1                   0           0





Equipe B              2        1               0                   0           3                





Equipe C             2         0               0                   1           1





Equipe D             2         0               0                   1           1





Equipe A             3         1               0                   0           3





Equipe B             3         0               1                   0           0                





Equipe C             3         0               0                   1           1





Equipe D             3         0               0                   1           1





Equipe A             4         1               0                   0           3





Equipe B             4         0               1                   0           0                





Equipe C             4         0               1                   0           0





Equipe D             4         1               0                   0           3






 







 







 






Pour éffectuer en classement en fonction des résultats il faut comptabiliser les points obtenus de chaques équipes en en fonction du nombre obtenus en les classant en ordre de grandeur.






 






Une victoire = 3 points





Une défaite = 0 points





Un nul = 1 point




 






Le classement est le suivant :






 






1. L'équipe A a 10 points





2. L'équipe D a 6 points





3. L'équipe B a 3 points





4. L'équipe C a 3 points






 






L'équipe B est a égalité avec l'équipe C mais précède cette dernière au classement parce qu'elle a une victoire en +.






 






Pourriez-vous me dire comment écrire ma requête SQL pour parvenir au résultat suivants :






 







            1. L'équipe A a 10 points





2. L'équipe D a 6 points





3. L'équipe B a 3 points





4. L'équipe C a 3 points

D'avance merci

4 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
24 sept. 2008 à 21:43
Salut

Voila la requete (sous sqlserver, j'ai pas access)

select sum(point) AS nbpoints,SUM(victoire) AS NBVICTOIRE ,equipe as EQUIPE
from jeu
group by equipe
order by nbpoints DESC, NBVICTOIRE DESC
0
jjg65 Messages postés 28 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 16 août 2011
28 sept. 2008 à 09:08
Cher membre,
Merci pour la réponse, j'avance bien.
Si je peux me permettre de continuer sur ma lancée en posant un autre problème.

Voici la table des buteurs :

NomJoueur                 Equipe                 JourneeChampionnat               NombreButJoueur
        AA                         1                                  1                                           2
        AB                         2                                  1                                           1
        AC                         2                                  1                                           1
        AD                         3                                  1                                           1
        AE                         4                                   1                                           1 
        AA                         1                                  2                                           1
        AE                         4                                  2                                           1
        AF                         5                                  2                                           1
        AG                         6                                  2                                           1
        AH                         7                                  2                                           1 
        AA                         1                                  3                                           1
        AB                         2                                  3                                           1
        AG                         6                                  3                                           1
        AI                          8                                  3                                           1
        AJ                          9                                  3                                           1 

Je voudrais faire une requête permettant par exemple de visualiser la liste les buteurs des 2 premières journées de championnat (JourneeChampionnat  1 et 2) et que les joueurs n'apparaissent qu'une seule fois dans la liste
Ce qui donnerait :
         NomJoueur          Equipe                 NombreButJoueur
1.        AA                         1                                 3
2.        AE                         4                                 2 
3.        AB                         2                                 1
4.       AC                         2                                  1
5.       AD                         3                                  1
6.       AG                         6                                  1
7.       AH                         7                                  1                                           1 

                   
0
jjg65 Messages postés 28 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 16 août 2011
28 sept. 2008 à 09:25
Excusez-moi pour la mauvaise présentation.
Ceci est plus conforme à ce que je voulais faire.

NomJoueur      Equipe      Journee    NombreButJoueur
  AA             1            1            2
  AB             2            1            1
  AC             2            1            1
  AD             3            1            1
  AE             4            1            1 
  AA             1            2            1
  AE             4            2            1
  AF             5            2            1
  AG             6            2            1
  AH             7            2            1 
  AA             1            3            1
  AB             2            3            1
  AG             6            3            1
  AI             8            3            1
  AJ             9            3            1 

Je voudrais faire une requête permettant par exemple de visualiser la liste des buteurs des 2 premières journées de championnat (JourneeChampionnat  1 et 2) sans tenir compte que la base contient les 3 premières journées de championnat et de faire en sorte que les joueurs n'apparaissent qu'une seule fois dans la liste
Ce qui donnerait :
     NomJoueur          Equipe       TotalButJoueur
1.      AA                 1                3
2.      AE                 4                2 
3.      AB                 2                1
4.      AC                 2                1
5.      AD                 3                1
6.      AG                 6                1
7.      AH                 7                1                       
0
themessenger Messages postés 45 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 5 janvier 2009
28 sept. 2008 à 16:04
Bonjour essai cette requete pour voir :

SELECT NomJoueur ,Equipe, TotalButJoueur
FROM Buteurs
WHERE  ( Journee = 1 or 2 );

"Some men see things are they are and say WHY ? I dream of things that never were and I say WHY NOT ?"
0
Rejoignez-nous