Requête max sur 3 tables

Bonjour,

Je suis chargé d'analyser les résultats des élections régionales. J'ai 3 tables :
- ville (id, nom)
- lister (id, nom)
- resultat (id, id_ville, id_liste, voix)
Je voudrais connaître la liste qui a fait le meilleur score dans chaque ville et ensuite afficher ces villes en selectionnant une liste. En clair, je voudrais connaître les villes dans lesquelles une liste a fait les meilleurs résultats.
Le problème, c'est que je sèche complétement sur la requête. J'arrive à selectionner le max(voix) dans chaque ville mais je n'arrive pas en même temps à afficher le nom de la liste.

Si quelqu'un pouvait m'aider...

D'avance merci !
Configuration: Windows XP / Internet Explorer 7.0

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. SELECT liste, max(voix)
    FROM ville, liste, resultat
    WHERE resultat.id_liste = liste.id
    GROUP BY liste, ville;

    tient moi au courant ;)
    1. merci de ta rapidité... je n'arrive cependant pas à la tester, je suis un peu perdu dans la nomination (ex : GROUP BY liste, ville)... je mélange nom de table et identifiant
  2. En résumé, je veux connaître toutes les villes dans lesquelles la liste X arrive en tête...