SQL

Résolu
Bonjour,

comment je peux calculer le nombre de points d'une équipe sachant que les tables sont :
equipe(codeE,nomE,ville)
joueur(idJ,nomJ,nationalité,#codeE)
match(idM,dateM,#codeE1,#codeE2,scoreE1,scoreE2)
et Merci :)

1 réponse

  1. Bonjour,

    Si tu ne nous dis pas comment tu calcules les points, on ne pourra pas répondre !
    Suivant ton SGBD, il peut également y avoir des nuances.

    En considérant le championnat de foot de L1, on dit victoire 3pts, match nul 1pt, défaite 0pt.

    Tu demandes pour une seule équipe, donc on en connaît l'id (idEquipe ci-dessous) :
    SELECT
    SUM (CASE
    WHEN scoreE1 > scoreE2 AND codeE1 = 'idEquipe' THEN 3
    WHEN scoreE1 < scoreE2 AND codeE2 = 'idEquipe' THEN 3
    WHEN scoreE1 = scoreE2 THEN 1
    ELSE 0 END ) as points
    FROM match
    WHERE 'idEquipe' IN (codeE1, codeE2)

    Xavier
    0