Cherche bonne requète mysql
Résolu
JessayeDeTrouver
Messages postés
300
Statut
Membre
-
JessayeDeTrouver Messages postés 300 Statut Membre -
JessayeDeTrouver Messages postés 300 Statut Membre -
Bonjour,
je n'arrive pas à trouver la bonne requète mysql à partir d'une table.
La table se nomme pays et n'a que 2 colonnes :
- nom (varchar)
- ville (varchar)
Voici les données :
nom | ville
------------------------------
France | Paris
France | Nice
France | Nice
France | Lille
Suisse | Lausanne
Suisse | Friboug
Suisse | Friboug
Italie | Milan
Alors moi ce que je veux c'est trouver la requète qui m'affiche la liste des pays (de façon distincte) qui ont au moins 2 villes distinctes.
Dans cet exemple, la requète me donnerait comme résultat :
France (car 3 villes distinctes)
Suisse (car 2 villes distinctes)
Mais je n'arrive pas à trouver la bonne requète. Une idée ?
Merci d'avance pour votre aide, cordialement.
je n'arrive pas à trouver la bonne requète mysql à partir d'une table.
La table se nomme pays et n'a que 2 colonnes :
- nom (varchar)
- ville (varchar)
Voici les données :
nom | ville
------------------------------
France | Paris
France | Nice
France | Nice
France | Lille
Suisse | Lausanne
Suisse | Friboug
Suisse | Friboug
Italie | Milan
Alors moi ce que je veux c'est trouver la requète qui m'affiche la liste des pays (de façon distincte) qui ont au moins 2 villes distinctes.
Dans cet exemple, la requète me donnerait comme résultat :
France (car 3 villes distinctes)
Suisse (car 2 villes distinctes)
Mais je n'arrive pas à trouver la bonne requète. Une idée ?
Merci d'avance pour votre aide, cordialement.
3 réponses
-
il te faut deux requetes, la premiere avec COUNT(*) pour compter les villes
la deuxieme plus classique ou on affiche les villes dont le nombre est superieur ou egal a 2
WHERE "'.$recultat_compte.'" => 2 -
En faite, j'ai oublié de préciser que les villes doivent etre distinctes.
Donc la requète doit afficher la liste des pays qui ont au moins 2 villes distinctes (car dans la table, un pays peut avoir des villes en double) ! -
Bonjour,
De tête, à essayer comme ça:
SELECT nom, COUNT(1) AS nombre
FROM pays
GROUP BY nom, ville
WHERE nombre >1
A+