Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* EXO 1*/
- CREATE TABLE TOURISTE(
- nom VARCHAR(30),
- prenom VARCHAR(30),
- age INT,
- paysOrigine VARCHAR(30),
- constraint pk_touriste primary key (nom)
- )
- CREATE TABLE MONUMENT(
- nom VARCHAR(50),
- ville VARCHAR(30),
- pays VARCHAR(30),
- anneeConstruction INT,
- constraint pk_monument primary key (nom)
- )
- CREATE TABLE VISITE(
- nomTouriste VARCHAR(30),
- nomMonument VARCHAR(50),
- dateVisite DATE,
- prixEntree INT,
- constraint pk_visite primary key (nomTouriste, nomMonument),
- constraint fk_visite_nomTouriste foreign key (nomTouriste) references TOURISTE(nom),
- constraint fk_visite_nomMonument foreign key (nomMonument) references MONUMENT(nom)
- )
- /*EXO 2*/
- insert into touriste values
- ('Bonaparte','Napoléon','37','France'),
- ('Tepes','Vlad','28','Roumanie'),
- ('Legrand','Alexandre','33','Grêce'),
- ('Deux','Nicolas','41','Russie'),
- ('César','Jules','44','Italie'),
- ('Darc','Jeanne','18','France');
- insert into monument values
- ('Château de Dracula','Bran','Roumanie','1377'),
- ('Tour Eiffel','Paris','France','1889'),
- ('Corcovado','Rio','Brésil','1931'),
- ('Colisée','Rome','Italie','80'),
- ('Tour de Pise','Pise','Italie','1350'),
- /*('Cathédrale de la Sé','Sao Paulo','Brésil','1954'),*/
- ('Cathédrale de la Sé','Sao Paulo','Brésil','1954'),
- ('Maison du Peuple','Bucarest','Roumanie','1984');
- insert into monument(nom, ville, pays) values ('Château de Versailles','Versailles','France');
- insert into visite values
- ('Bonaparte','Colisée','12/12/2008','10'),
- ('Tepes','Cathédrale de la Sé','18/05/2010','0'),
- ('César','Tour Eiffel','01/01/2005','15'),
- ('Legrand','Tour Eiffel','23/11/2008','25'),
- ('César','Corcovado','25/12/2006','12'),
- ('César','Cathédrale de la Sé','18/12/2006','5'),
- ('Bonaparte','Maison du Peuple','25/09/2010','20');
- insert into visite(nomTouriste,nomMonument, dateVisite) values ('Legrand','Château de Dracula','14/02/2009');
- /*EXO 3:*/
- /*Question 1*/
- Select touriste.nom, paysOrigine
- from touriste, visite, monument
- where touriste.nom=visite.nomTouriste and visite.nomMonument=monument.nom and touriste.paysOrigine=monument.pays;
- /*Question 3*/
- Select ville
- from monument, visite
- where monument.nom=visite.nomMonument
- and visite.prixEntree<=15;
- /*Question 4*/
- Select TOP 1 monument.nom
- from monument, visite
- where monument.nom=visite.nomMonument
- ORDER BY visite.prixEntree ASC;
- /*Question 5*/
- Select avg (prixEntree)
- from visite, monument
- where monument.nom=visite.nomMonument
- and pays='Brésil';
- /*Question 6*/
- SELECT count(nomMonument) AS nbVisite ,TOURISTE.nom from VISITE, MONUMENT, TOURISTE
- Where TOURISTE.nom = VISITE.nomTouriste
- AND MONUMENT.nom = VISITE.nomMonument
- GROUP BY TOURISTE.nom;
- /*Question 7*/
- SELECT count(TOURISTE.nom), nomMonument from VISITE, MONUMENT, TOURISTE
- Where TOURISTE.nom = VISITE.nomTouriste
- AND MONUMENT.nom = VISITE.nomMonument
- GROUP BY nomMonument
- HAVING count(TOURISTE.nom) > 2;
- /*EXO 4*/
- CREATE VIEW PAYS as
- Select count(touriste.nom) as totalTouriste, paysOrigine
- from touriste
- Group by paysOrigine
- Having count(nom)>=2;
- Select * from PAYS;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement