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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Probleme de requete

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de requete

n°1466384
IG2da
Posté le 27-10-2006 à 18:23:17  profilanswer
 

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!

mood
Publicité
Posté le 27-10-2006 à 18:23:17  profilanswer
 

n°1466385
IG2da
Posté le 27-10-2006 à 18:24:22  profilanswer
 

Dsl une modification:
1match perdu = 0point
un match nul = 1 points
voila
merci!

n°1466529
Beegee
Posté le 28-10-2006 à 09:01:35  profilanswer
 

Quel SGBD ?
 
Normalement tu peux t'en sortir avec des CASE ou IIF ou équivalent ;)

n°1466537
IG2da
Posté le 28-10-2006 à 10:28:58  profilanswer
 

PROBLEME RESOLU, on ma aider et il fallait faire en faite cette requete:
 
SELECT equipe,  
       (SELECT count(*)*3  
          FROM rencontre RG1
         WHERE RG1.equipe = E.equipe
           AND butsmarquéséquipe1 > butsmarquéséquipe2)
         +  
       (SELECT count(*)*3  
          FROM rencontre RG2
         WHERE RG2.equipe2 = E.equipe
           AND butsmarquéséquipe2 > butsmarquéséquipe1)
         +  
       (SELECT count(*)*1
          FROM rencontre RN
         WHERE butsmarquéséquipe1 = butsmarquéséquipe2
           AND (E.equipe = RN.equipe OR E.equipe = RN.equipe2))  
  FROM Equipe E
GROUP BY equipe;
 
Elle était proche de ma 1ere et assez simple mais je n'avais pas trouver! Et finalement c'est bien ce que je pensai, pas besoin de LEFT JOIN!
Merci quand meme Beeggee!


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

  Probleme de requete

 

Sujets relatifs
Problème avec requête sql et ordre d'affichage des champs [résolu][Business Objec (webi)], probleme de requete LIKE '%blabla%'.
[MySQL] Probléme sur requete pas simple !Oracle : problème requête ! MERGE INTO [RESOL] 2 bugs Oracle de fou
[Access]Problème de requete dans un formulairequotes dans requête pose problème
Problème de contenu d'une variable suite à requete AJAX.Probleme requete WMI interminable
Probleme de création de requête SQL un peu compliqué !Problème accent dans requete sql
Plus de sujets relatifs à : Probleme de requete


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