PCSI1-LMB
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Aller en bas
avatar
Raouf-Traikia
Invité

Exercice 23 Empty Exercice 23

Mar 5 Mai - 15:53
Bonjours Monsieur ,
J'obtient le programme suivant :
SELECT v.nom FROM villes AS v
JOIN trajets AS t ON t.depart=v.code_postal  OR t.arrivee=v.code_postal
WHERE t.TGV ='0' AND v.population>'200000'
GROUP BY v.nom

Sauf qu'il ne me renvoie que les villles de plus de 200000 habitants, je ne vois pas où est mon erreur.
Merci d'avance
avatar
Nicolas Provost
Admin
Messages : 107
Date d'inscription : 19/04/2020
https://pcsi1-lmb.cours.net

Exercice 23 Empty Re: Exercice 23

Mar 5 Mai - 16:33
C'est ici un problème de logique.
Tu demandes les villes de plus de 200000 qui ont un train qui n'est pas un TGV.
La question est d'avoir aucun TGV ce qui n'est pas pareil.
Par exemple, Paris (75000) a 4 TGV et 5 non-tgv donc il apparaît dans ta requête (5 fois) mais ne devrait pas.
Il faut ici utiliser EXCEPT pour supprimer de la liste ceux qui ont un TGV
L'idée est ainsi
(WHERE population>200000)
EXCEPT
(WHERE TGV=1)
NB Le code est délibérément incomplet
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum