- Marie D
- Messages : 7
Date d'inscription : 24/04/2020
Exercice 31
Dim 17 Mai - 16:04
Bonjour Monsieur,
Je ne comprends pas pourquoi mon programme pour l'exercice 31 ne fonctionne pas :
SELECT r.autoroute , COUNT(r.ville) AS nbville , COUNT(v.région)
FROM reseau r
JOIN villes v ON v.code_postal = r.ville
WHERE nbville >= 5
GROUP BY r.autoroute
Voici le message d'erreur qui m'est renvoyé :
SQL Error [1]: [SQLITE_ERROR] SQL error or missing database (misuse of aggregate: COUNT())
Je ne comprends pas pourquoi mon programme pour l'exercice 31 ne fonctionne pas :
SELECT r.autoroute , COUNT(r.ville) AS nbville , COUNT(v.région)
FROM reseau r
JOIN villes v ON v.code_postal = r.ville
WHERE nbville >= 5
GROUP BY r.autoroute
Voici le message d'erreur qui m'est renvoyé :
SQL Error [1]: [SQLITE_ERROR] SQL error or missing database (misuse of aggregate: COUNT())
Re: Exercice 31
Lun 18 Mai - 11:51
On ne pas mettre l'attribut nbville dans le WHERE car il est créé par la requête qui dépend du WHERE.
Donc ça 'tour en boucle' il ne sait pas dans quel sens prendre le programme.
C'est un problème récurrent en SQL donc on affiche toutes résultats sans conditions puis on ajoute
HAVING nbville>=5
qui fait le WHERE après l'agrégation.
Donc ça 'tour en boucle' il ne sait pas dans quel sens prendre le programme.
C'est un problème récurrent en SQL donc on affiche toutes résultats sans conditions puis on ajoute
HAVING nbville>=5
qui fait le WHERE après l'agrégation.
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum