Bonjour à tous!
Donc voila j'ai créer une base de donnée sous access comme suit:
table:
EQUIPE avec comme clé primaire "equipe".(seul champ)
JOURNEE avec comme clé primaire "journee".(seul champ)
RENCONTRE avec comme clé primaire et étrangère "equipe" de EQUIPE, "equipe2" de EQUIPE(association réflexive), "journee" de JOURNEE et comme champ "butsmarquéséquipe1"(nombre de buts marqué par "equipe" ) et "butsmarquéséquipe2"(nombre de buts marqués par "équipe2" )
Donc la traduction serait: une équipe rencontre une autre équipe à une certaine journée.
A partir de cela, je souhaiterait réaliser une requete me permettant d'avoir le nombre de points par équipe sachant:
1match gagné = 3 points
1match perdu = 1 points
J'ai tout d'abord réalisé une requete me permettant davoir le nombre de points pour une équipe:
SELECT equipe, (SELECT count(equipe)*3
FROM rencontre
WHERE butsmarquéséquipe1>butsmarquéséquipe2 And equipe='om')
+
(SELECT count(equipe)*3
FROM rencontre
WHERE butsmarquéséquipe2>butsmarquéséquipe1 And equipe2='om') +
(SELECT count(equipe)*1
FROM rencontre
WHERE butsmarquéséquipe1=butsmarquéséquipe2 And ( equipe='om' or equipe2='om'))
FROM rencontre
WHERE equipe='om'
GROUP BY equipe;
Cette requete fonctionne mais lorsque j'essaye de faire une requete pour afficher toutes les équipes avec leurs points je n'y arrive pas!
On m'a dit alors qu'il fallait peut-etre utiliser un "LEFT JOIN" et on est arriver a cette requete(les matchs nuls ne sont pas traités, c'est juste une ébauche):
SELECT E.equipe, COUNT(A.equipe)*3
FROM equipe E LEFT JOIN (SELECT equipe2 FROM rencontre WHERE butsmarquéséquipe1 < butsmarquéséquipe2) B
ON E.equipe = B.equipe2
LEFT JOIN (SELECT equipe FROM rencontre WHERE butsmarquéséquipe1 > butsmarquéséquipe2) A
ON E.equipe = A.equipe GROUP BY E.equipe;
Cette requete ne fonctionne pas, cela affiche: "erreur de sybtaxe opérateur absent dans: E.equipe = B.equipe2 LEFT JOIN (SELECT equipe FROM rencontre WHERE butsmarquéséquipe1 > butsmarquéséquipe2) A ON E.equipe = A.equipe GROUP BY E.equipe;"
On a chercher mais malheureusement pas trouver!
Donc voila j'aimerai savoir s'il faut bien utiliser un LEFT JOIN et si vous n'auriez pas une requete a me proposer pour résoudre ce probleme!!
Merci d'avance!