Académique Documents
Professionnel Documents
Culture Documents
Examen Base de Données Avec Correction
Examen Base de Données Avec Correction
INITIATION
AUX B
ASES
DE DONNEES
Initiation
aux Bases
de
Donnes
_____________________________________________________________________________
Universit de la Polynsie Franaise- Dcembre 2005
Examen de Contrle Continu
1.5 h
Seul document autoris : Langage SQL et objet-relationnel
Lorsqu'une ligne d'une table figurant dans une jointure n'a pas de correspondant dans les
autres tables, elle ne satisfait pas au critre d'qui-jointure et donc ne figure pas dans le
rsultat de la jointure. Pour afficher les lignes nayant pas de correspondant on utilise
une jointure externe.
Une jointure externe est utilise pour afficher tous les tuples (lignes) y compris ceux qui
nont pas de correspondance dans lune ou lautre des relations concernes
__________________________________________________________________________
PAGE 1 / 7
__________________________________________________________________________
PAGE 2 / 7
AVION
1,1
TYPE
POSSEDE
numero_immat
localisation
1,N
1,N
0,N
PASSE
id_type
nom
poids
capacite
rayon_action
CONCERNE
1,1
EXPERT
VOL
TEST
numero_test
nom
seuil
date
etat
1,N
1,1
1,1
PERSONNE
numero_vol
ville_dep
ville_arr
h_dep
h_arr
matricule
nom
adresse
tel
salaire
date_debut
date fin
1,N
COMMANDE
PILOTE
TECHNICIEN
examen_medical
1,N
__________________________________________________________________________
PAGE 3 / 7
PAGE 4 / 7
1. les numros des pilotes en service et les villes de dpart de leurs vols
ou
select vol.matricule, ville_dep from vol, pilote
where vol.matricule = pilote.matricule ;
2. le nom des pilotes domicilis Paris assurant un vol au dpart de Nice avec un
Airbus A380
select p.nom from pilote p, vol v, avion a, type t
where p.matricule = v.matricule
and v.numero_immat = a.numero_immat
and a.id_type = t.id_type
and adresse = Paris
and ville_dep = Nice
and type.nom = Airbus 380;
3. les vols effectus par les pilotes de numro 100 et 204
ou
select * from vol where matricule = 100
union
select * from vol where matricule = 204;
4. par type d'avion, le nombre de vols au dpart de Paris
select t.nom, count(*)
from vol v, avion a, type t
where a.id_type = t.id_type
and a.numero_immat = v.numero_immat
and ville_dep = Paris
group by t.id_type ;
__________________________________________________________________________
PAGE 5 / 7
select nom from pilote where salaire >= ALL (select salaire from pilote) ;
__________________________________________________________________________
PAGE 6 / 7
les matricules des pilotes qui ne sont pas en service (qui ne volent pas)
les avions qui ont une capacit de moins de 350 passagers ou localiss
Nice
__________________________________________________________________________
PAGE 7 / 7