IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MySQL Discussion :

Problème de count multiple


Sujet :

MySQL

  1. #1
    Membre éclairé Avatar de cadoudal56
    Profil pro
    Inscrit en
    Février 2005
    Messages
    694
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2005
    Messages : 694
    Points : 779
    Points
    779
    Par défaut Problème de count multiple
    Bonjour,

    Voila, c'est le genre de requete que je fais d'habitude sans probleme mais là, evidemment cela ne marche pas...

    J'ai une table equipe (teams) et une table matchs.
    Je voudrais connaitre le nombre de victoire, de défaite et de match nul à domicile ou a l'exterieur...

    Pour se faire je souhaite compter cela directement dans ma table des matchs en réalisant 3 jointures sur la table Matchs a partir de ma table teams

    Voila ma requète :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT COUNT(VIC.id) as vic, COUNT(LOO.id) as loose, COUNT(DRA.id) as draw 
    FROM teams 
    LEFT JOIN matchs AS VIC ON VIC.id_visteam = teams.id AND VIC.dom_score < VIC.vis_score 
    LEFT JOIN matchs AS LOO ON LOO.id_visteam = teams.id AND LOO.dom_score > LOO.vis_score 
    LEFT JOIN matchs AS DRA ON DRA.id_visteam = teams.id AND DRA.dom_score = DRA.vis_score 
    WHERE teams.id=3 
    GROUP BY teams.id
    Avec cette requete, soit MySQL bloque, soit il me renvoit des résultats extravagant...

    Comment puis je optimiser ma requête ?

    Merci d'avance à vous
    Cadoudal56
    LMN24 - Site d'actualité internationale multilingue
    http://www.lmn24.com

  2. #2
    Membre régulier
    Profil pro
    None
    Inscrit en
    Mars 2008
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : None

    Informations forums :
    Inscription : Mars 2008
    Messages : 58
    Points : 80
    Points
    80
    Par défaut
    De memoire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT
    SUM(IF(VIC.dom_score < VIC.vis_score,1,0)) AS vic,
    SUM(IF(VIC.dom_score > VIC.vis_score,1,0)) AS loose,
    SUM(IF(VIC.dom_score = VIC.vis_score,1,0)) AS draw
    FROM teams 
    LEFT JOIN matchs AS VIC ON VIC.id_visteam = teams.id
    WHERE teams.id=3 
    GROUP BY teams.id

  3. #3
    Membre éclairé Avatar de cadoudal56
    Profil pro
    Inscrit en
    Février 2005
    Messages
    694
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2005
    Messages : 694
    Points : 779
    Points
    779
    Par défaut
    Ouah, c'est magique ton truc :-)

    Je connaissais pas cette manière d'interroger une table.
    Je vais garder cette requete précieusement :-)

    Merci beaucoup
    @+
    Cadou
    LMN24 - Site d'actualité internationale multilingue
    http://www.lmn24.com

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème requête count multiples
    Par kro001 dans le forum Débuter
    Réponses: 3
    Dernier message: 05/10/2007, 21h10
  2. problème de requete: COUNT() multiples
    Par nicolemans72 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/02/2007, 10h06
  3. Access/SQL : Problème avec Count
    Par Taurëndil dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/01/2005, 15h49
  4. Problème d'ajout multiples dans un BDD Access
    Par arnaud_verlaine dans le forum Langage SQL
    Réponses: 3
    Dernier message: 31/05/2004, 13h34
  5. Réponses: 6
    Dernier message: 25/03/2002, 21h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo