62
CHAPITRE 3. BASES DE DONNÉES RELATIONNELLES {S4-5}
3.5 Travaux Dirigés – Algèbre relationnelle
Soit le schéma relationnel suivant :
– Individu(Num-Ind, Nom, Prénom)
– Jouer(Num-Ind, Num-Film, Rôle)
– Film(Num-Film Num-Ind, Titre, Genre, Année)
– Projection(Num-Ciné, Num-Film, Date)
– Cinéma(Num-Ciné, Nom, Adresse)
Le tableau 3.16 donne une instance de ce schéma relationnel.
3.5.1 Exercices de compréhension de requêtes
Dans les exercices qui suivent, donnez, sous forme de relation, le résultat des requêtes formulées en
algèbre relationnelle.
Sélection, et un peu de logique . . .
1. σ(Année<1996)Film
2. σ(Année<2000∧Genre=”Drame”)Film
3. σ(Année<1990∨Genre=”Drame”)Film
4. σ(¬(Année>2000∨Genre=”Policier”))Film
5. σ(¬(Année>2000))σ(Genre=”Drame”)Film
Projection
6. Π(Titre,Genre,Année)Film
7. Π(Genre)Film
8. Π(Genre)σ(Année<2000)Film
Union
9. (Π(Nom,Prénom)σ(Prénom=”John”)Individu) ∪ (Π(Nom,Prénom)σ(Prénom=”Paul”)Individu)
Intersection
10. (Π(Prénom)Individu) ∩ (Π(Rôle) Jouer)
Différence
11. (Π(Nom)σ(Nom∼”ˆ[TW]”)Individu) − (Π(Nom)σ(Prénom=”John”)Individu)
Remarque : ∼ est un opérateur de comparaison indiquant que l’élément qui suit n’est pas une chaîne
de caractères mais une expression régulière (cf. section 4.5.8).
Produit cartésien
12. (Π(Titre,Genre)σ(Année≤1985)Film) × (Π(Nom)Cinéma)
Jointure
13. Π(Titre,Nom,Prénom)(FilmNum−IndIndividu)