TP SQL
INFOTOUR : Lagence de voyage prfre des tudiants de la Licence Info eee e Ecrivez en SQL les requtes suivantes et testez-les e Requtes simples e 1. Donnez la liste (nom, prnom, adresse, ville) de toutes les personnes de la base dans lordre ale phabtique. e 2. Donnez, sans rptition, la liste des villes de rsidence de ces personnes. e e e 3. Donnez la liste (nom, prnom) des personnes rsidant ` Lille. e e a 4. Donnez la liste des transports (compagnie, medium, dpart, arrive, heures de dpart et darrive) e e e e cotant moins de 100 euros u 5. Donnez la liste(nom, prnom) des personnes dont le nom contient la lettre R et ne contient pas e les lettres A et T. Acher le rsultat en minuscule avec une premi`re lettre en majuscule. e e 6. Donnez, par ville de rsidence, le nombre de personnes qui y habitent. e 7. Donnez la liste des hotels ` quatre toiles . a e 8. Donnez, avec le pays, la longueur du nom de sa capitale ? 9. Donnez, pour lensemble des sjours (tours) proposs, la moyenne des prix. e e 10. Achez le prix de tour le moins lev, ainsi que le prix le plus lev. e e e e 11. Sachant que la TVA est de 19,6%, calculez le prix hors taxes des tours proposs. e 12. Donnez le nombre de personnes par ville, en prsentant les rsultats par ordre dcroissant. e e e 13. calculez en minute la dure de chaque trajet e Donnez en SQL le texte des requtes suivantes, en utilisant exclusivement des jointures. e 14. Donnez le nombre de personnes direntes ayant achet au moins un sjour. e e e 15. Donnez la liste (nom, nombre dtoiles) dhotels de Florence. e 16. Donnez le nom et le prnom du directeur de lhotel Lutetia de Paris. e 17. Donnez, classe par ordre alphabtique, la liste des clients ayant achet du Paris by night e e e 18. Donnez de mme la liste des Lillois ayant achet un sjour ` Florence e e e a 19. Donnez le nombre dhotels de 4 toiles rpertoris dans la base par pays. e e e 20. Donnez, classs par toile, le nombre dhotels rpertoris dans la base par pays. e e e e 21. Donnez les noms et prnoms des directeurs de muses dont le nom (des muses) commence par la e e e lettre M. 22. Donnez la liste des transports quil est possible de prendre au dpart de Lille pour aller visiter e Bruges 23. Donnez la liste des moyens de transport disponibles entre Paris et Lille, classs par heure de dpart e e croissante et par cot dcroissant. u e 24. Donnez la liste (compagnie, type ou mdium) des transports entre Lille et Paris dont les heures de e dpart sont comprises au sens large entre 6 et 8 heures. e 25. Donnez la liste des homonymes (utilisez une auto-jointure). 26. Donnez la liste (nom1, prnom1, nom2, prnom 2) des couples (au sens mathmatique du terme) e e e de lillois quil est possible de constituer, sans rptition. e e Ecrivez les requtes suivantes en utilisant exclusivement cette fois-ci des sous-requtes non corrlatives e e e 27. Donnez le nombre de personnes direntes ayant achet au moins un sjour. e e e
28. Donnez la liste (nom, nombre dtoiles) dhotels de Florence. e 29. Donnez les noms et prnoms des directeurs de muses dont le nom commence par la lettre M. e e 30. Donnez la liste des sjours ou tours plus chers que la moyenne. e 31. Donnez, classe par ordre alphabtique, la liste des clients ayant achet du Paris by night e e e 32. Donnez la liste des transports quil est possible de prendre au dpart de Lille pour aller visiter e Bruges. 33. Donnez la liste (nom, prenom) des Lillois ayant achet un sjour ` Florence e e a 34. Donnez le nom et le prnom du directeur de lhotel Lutetia de Paris. e 35. Donnez lheure de dpart et darrive de tous les transports utiliss pour aller de Lille ` Paris. e e e a 36. Donnez la liste (compagnie, type ou mdium) des transports entre Lille et Paris dont les heures de e dpart sont comprises au sens large entre 6 et 8 heures. e 37. Donnez le nom de lhotel ayant la chambre la plus ch`re de tous les hotels de Florence. e 38. Donnez le tour le plus achet. e Les requtes suivantes sont ` crire en utilisant les oprateurs demands : e ae e e 39. union : Donnez la liste (nom et ville) des hotels de Paris et de Bruxelles 40. intersection : Donnez la liste (nom prnom) des personnes ayant achet ` la fois du Paris by night e ea et un sjour ` Florence. e a 41. dirence : Quelles sont les personnes ayant achet un voyage mais nayant jamais visit Rome. e e e Requtes utilisant des sous-requtes corrlatives e e e 42. Quels sont les hotels ayant des chambres plus ch`res que la moyenne des prix des chambres dhotels e de mme catgorie (mme nombre dtoiles) e e e e 43. Donnez le nombre total des chambres de chaque hotel dont les prix sont suprieur ` la moyenne des e a prix des chambres de ce mme hotel e Requtes portant sur le traitement des temps e 44. Donnez en secondes la dure des vol par avio, dont lheure de dcollage se situe apr`s 18 e e e 45. Calculez, en minutes, la dure des transports entre Paris et Lille. Ordonnez les rsultats par temps e e dcroissant. e 46. Quels sont les trajets dont la dure est suprieure ` au moins un de ceux utiliss par le tour Paris e e a e by night 47. Donnez la liste des clients ayant achet un voyage depuis plus dun mois. e
DEPART ARRIVEE
1,N 1,1
1,N 1,N POSH 1,N 1,N POSMU 1,1 HOTELS 1,1 numhotel nbetoiles adresse description
1,N 1,1
CatChHot directeurH
1,N
Position 1,N
CONCERNER TOURS numtour description 1,N duree prix 1,N UTILISER 1,1 1,N TRANSPORTS numtrsp 1,1 compagnie mdium hdepart harrivee cout
POSMO
directeurMu
ACHETER
1,1 PERSONNES numper 1,N nom prenom adresse ville 1,1 1,1 1,1
pays(numpays number, nom varchar(20), capitale varchar(20)) ; villes(numville number, nom varchar(20), numpays number) ; personnes(numper number, nom varchar(30), prenom varchar(20), adresse varchar(30), ville varchar(30), numpays number) ; musees(nummus number, nom varchar(30), numville number, adresse varchar(30), description varchar(50), directeur number) ; hotels(numhotel number, nom varchar(30), nbetoiles number, adresse varchar(50), description varchar(300),num ville number, directeur number) ; catchambres(numcat number, nombredechambres number, prixppers number, caracteristiques varchar(300), numhotel number) ; monuments(nummon number, nom varchar(30), adresse varchar(30), numville number, description varchar(300), directeur number) ; tours(numtour number, description varchar(100), duree number, numpays number, prix number(8,2)) ; transports(numtrsp number, compagnie varchar(30), medium varchar(20), depart number, arrivee number, hdepart char(5), harrivee char(5), cout number(8,2)) ; utiliser(numutour number, numtrsp number) ; acheter(numachat number,numper number, numtour number, date achat char(10)) ;