Vous êtes sur la page 1sur 23

ENCG de Kenitra

Semestre Autonome
S5

Pr S.MOQQADDEM
AU: 2021/2022
UNIVERSITE IBN TOFAIL ENCGK

Plan du cours:

I Concepts généraux

II Le modèle E-A

III Le modèle relationnel de données

IV L’algèbre relationnelle

V Langage SQL

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 1. Introduction
❑ Nous pouvons distinguer trois familles d’opérateurs relationnels :
▪ Les opérateurs unaires (la sélection et la projection), qui sont
les plus simples, permettent de produire une nouvelle table à partir
d’une autre table.
▪ Les opérateurs binaires ensemblistes (l’union, l’intersection et
la différence) permettent de produire une nouvelle relation à partir
de deux relations de même degré et de même domaine.
▪ Les opérateurs binaires ou n-aires (le produit cartésien, la
jointure et la division) permettent de produire une nouvelle table à
partir de deux ou plusieurs autres tables.

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV.4. Les opérateurs binaires ou n-aires: Produit cartésien

Définition : Le produit cartésien est une opération portant sur


deux relations R1 et R2 et qui construit une troisième relation
regroupant exclusivement toutes les possibilités de combinaison
des tuples des relations R1 et R2.

Notation : R1 × R2

❑ Il s’agit d’une opération binaire commutative essentielle dont


la signature est :
relation × relation → relation

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Produit cartésien

Notation : R1 × R2
❑ Le résultat du produit cartésien est une nouvelle relation qui a
tous les attributs de R1 et tous ceux de R2.
❑ Si R1 ou R2 ou les deux sont vides, la relation qui résulte du
produit cartésien est vide.
❑ Le nombre d’enregistrements de la relation qui résulte du
produit cartésien est le nombre d’enregistrements de R1 multiplié
par le nombre d’enregistrements de R2.

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Produit cartésien
❑ Pour deux tables R1 et R2, table R1 × R2 est le résultat de
l’algorithme suivant :
Pour chaque ligne de R1 faire
Pour chaque ligne de R2 faire
concaténer la ligne de R1 avec la ligne de R2
Fin Pour
Fin Pour
❑ Propriétés de la structure:
▪ degré(R1 × R2 )=degré(R1)+degré(R2 )
▪ cardinalité(R1 × R2 )= cardinalité (R1) * cardinalité (R2 )
Pr S.MOQQADDEM AU: 2021/2022
UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Produit cartésien
Exemple : PERSONNE × ACHAT
PERSONNE × ACHAT

PERSONNE ACHAT nom prénom article prix

nom prénom article prix Sabri Zahraa livre 500


Sabri Zahraa livre 500 Sabri Zahraa poupée 200
Yahy Khalid poupée 200 Sabri Zahraa montre 900
montre 900
Yahy Khalid livre 500
Yahy Khalid poupée 200

Yahy Khalid montre 900

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ équi-jointure, thêta-jointure, jointure naturelle
Définition : La jointure est une opération portant sur deux
relations R 1 et R2 qui construit une troisième relation regroupant
exclusivement toutes les possibilités de combinaison des tuples
des relations R1 et R2 qui satisfont l’expression logique E.
Notation: R1 ⋈E R2.

❑ Il s’agit d’une opération binaire commutative dont la signature


est :
relation × relation × expression logique → relation
Pr S.MOQQADDEM AU: 2021/2022
UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ équi-jointure, thêta-jointure, jointure naturelle

❑ La jointure est notée : R1 ⋈E R2.

❑ Si R1 ou R2 ou les deux sont vides, la relation qui résulte de la


jointure est vide.

❑ En fait, la jointure n’est rien d’autre qu’un produit cartésien


suivi d’une sélection:
R1 ⋈E R2 = σE (R1 × R2)

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ équi-jointure, thêta-jointure, jointure naturelle

R1 ⋈E R2 = σE (R1 × R2)
❑ Est le résultat de l’algorithme suivant :

Pour chaque ligne de R1 faire


Pour chaque ligne de R2 faire
lig= concaténer ligne R1 avec ligne R2
Si E(lig)=vrai alors garder lig
Fin Pour
Fin Pour

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
Exemple de jointure : PERSONNE ⋈((âge ≤ âgeA)Ʌ(prix ≤500))ACHAT
ACHAT
PERSONNE
âgeA article prix
nom prénom âge
99 livre 500
Sabri Zahraa 7
7 poupée 200
Yahy Khalid 43
22 baladeur 900
Samir Fouad 16
11 montre 250
PERSONNE ⋈((âge ≤ âgeA)Ʌ(prix ≤500))ACHAT
nom prénom âge âgeA article prix
Sabri Zahraa 7 99 livre 500
Sabri Zahraa 7 7 poupée 200
Sabri Zahraa 7 11 montre 250
Yahy Khalid 43 99 livre 500
Samir Fouad 16 99 livre 500

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ Jointure, thêta-jointure, jointure naturelle
Exemple de jointure : PERSONNE ⋈((âge ≤ âgeA)Ʌ(prix ≤500))ACHAT

Cette jointure permet de générer toutes les possibilités


d’association entre un achat et une personne en respectant l’âge
maximum conseillé pour un achat et la somme de 500Dh à ne pas
dépasser.

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ Jointure, thêta-jointure, jointure naturelle

▪ Thêta-jointure

Définition : La thêta-jointure est une jointure dans laquelle


l’expression logique E est une simple comparaison entre un
attribut A1 de la relation R1 et un attribut A2 de la relation R2.

➔ La thêta-jointure est notée :


R1 ⋈E R2

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ Jointure, thêta-jointure, jointure naturelle

▪ Équi-jointure
Définition : Une équi-jointure est une thêta-jointure dans laquelle
l’expression logique E est un test d’égalité entre un attribut A1 de
la relation R1 et un attribut A2 de la relation R2. L’équi-jointure est
notée R1 ⋈A1=A2 R2.
NB: Il vaut mieux écrire R1 ⋈A1=A2 R2 que R 1 ⋈A1,A2 R2, car cette
dernière notation, bien que parfois dans la littérature, prête à
confusion avec une jointure naturelle explicite.

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ Jointure, thêta-jointure, jointure naturelle
▪ Jointure naturelle
Définition : Une jointure naturelle est une jointure dans laquelle
l’expression logique E est un test d’égalité entre les attributs qui
portent le même nom dans les relations R1 et R2.
❑ Dans la relation construite, ces attributs ne sont pas dupliqués,
mais fusionnés en une seule colonne par couple d’attributs.
❑ La jointure naturelle est notée: R1 ⋈ R2 .
❑ Si la jointure ne doit porter que sur un sous-ensemble des
attributs communs à R1 et R2 il faut préciser explicitement ces
attributs de la manière suivante : R1 ⋈A1, .., An R2.
Pr S.MOQQADDEM AU: 2021/2022
UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
❑ Jointure, thêta-jointure, jointure naturelle
▪ Jointure naturelle
❑ Si R1 et R2 n’ont qu’un attribut en commun. Dans ce cas, une
jointure naturelle est équivalente à une équi-jointure dans
laquelle l’attribut de R1 et celui de R2 sont justement les deux
attributs qui portent le même nom.

❑ Pour effectuer une jointure naturelle entre R1 et R2 sur un attribut


A1 commun à R 1 et R2 , il vaut mieux écrire R1 ⋈ A1R2 que R 1 ⋈
R2 .

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Jointure
Exemple de jointure naturelle: PERSONNE ⋈ ACHAT ou
PERSONNE ⋈((âge)ACHAT
PERSONNE
ACHAT
nom prénom âge
âge article prix
Sabri Zahraa 7
43 livre 500
Yahy Khalid 43
7 poupée 200
Samir Fouad 7
25 montre 250
Tami Ayoub 25

PERSONNE ⋈(âge)ACHAT
nom prénom âge article prix
Sabri Zahraa 7 poupée 200
Yahy Khalid 43 Livre 500
Samir Fouad 7 poupée 200
Tami Ayoub 25 montre 250

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Division

Définition : la division est une opération portant sur deux


relations R1 et R2, telles que le schéma de R2 est strictement
inclus dans celui de R1, qui génère une troisième relation
regroupant toutes les parties d’enregistrements de la relation R1
qui, associées à tous les enregistrements de la relation R2, se
retrouvent dans R1.
Notation : R1 ÷ R2.
❑ Il s’agit d’une opération binaire non commutative dont la
signature est : relation × relation → relation

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Division
❑ La division de R1 par R2 (R1 ÷ R2) génère une relation qui
regroupe tous les tuples qui, concaténés à chacun des tuples de
R2, donne toujours des tuples de R1.
❑ La relation R2 ne peut pas être vide.
❑ Tous les attributs de R2 doivent être présents dans R1 et R1 doit
posséder au moins un attribut de plus que R2
❑ Le résultat de la division est une nouvelle relation qui a tous les
attributs de R1 sans aucun de ceux de R2.
❑ Si R1 est vide, la relation qui résulte de la division est vide.

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV. 4. Les opérateurs binaires: Division
Un exemple de division ENSEIGNEMENT ÷ ETUDIANT qui permet
de dresser la table R de tous les enseignants de la relation
ENSEIGNEMENT qui enseignent à tous les étudiants de la relation
ETUDIANT.

ENSEIGNEMENT÷ ETUDIANT
ENSEIGNEMENT ETUDIANT
nomEnseignant nomEtudiant nomEnseignant
nomEtudiant
Germain Dubois Germain
Dubois
Fidus Pascal Fidus
Pascal
Robert Durand

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV.5. Exercices
Nom Age Profession
Nom_imb Adresse Nb_étage Année Nomgérant
Alami 54 Architecte
Annakhil 22 Rue Azrou, Rabat 10 2009 Alami
Atif 39 Médecin
Firdaous 15 bd des Far, Fès 5 2000 Dahbi
Barhoum 58 Avocat
Table Immeuble Dahbi 65 Retraité
Table Personne
Nom_imb No_app Superficie Etage
Annakhil 1 150 10 Nom_imb No_app Nom_occ Année_h
Annakhil 2 100 1
Annakhil 1 Alami 2009
Annakhil 10 90 9
Annakhil 2 Dahbi 2009
Firdaous 5 120 2
Firdaous 10 100 5 Firdaous 5 Atif 2001

Firdaous 11 80 3 Firdaous 10 Barhoum 2005

Table Appartement Table Occupant

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV.5. Exercices
Soit la base de données simplifiée. Exprimer la signification et le
résultat des requêtes suivantes:
1. ПNom,Age(Personne)
2. ΠNom_imb(Immeuble)
3. ΠNom_imb, No_app(σsuperficie>100(Appartement));
4. Πnom-occ(σNom_imb="Firdaous" Ʌ Année_h>2001)(Occupant);
5. Πnom_imb, No_app(σNo_app=Etage (Appartement));
6. Πnomgérant, Superficie (Immeuble ⋈ Nom_imb=Nom_imbAppartement)
7. Πnom_occ, Année_h, Superficie(Appartement ⋈ Nom_imb=Nom_imb , No_app=No_app
Occupant)

Pr S.MOQQADDEM AU: 2021/2022


UNIVERSITE IBN TOFAIL ENCGK

IV. Algèbre relationnelle


IV.5. Exercices
Ecrire en algèbre relationnelle les requêtes:
• 1. Nom des immeubles ayant strictement plus de 8 étages.
• 2. Nom des personnes ayant emménagé avant 1994.
• 3. Nom des habitants d’Annakhil.
• 4. Nom des Architectes de plus de 25 ans.
• 5. Nom des immeubles ayant un appartement de plus de 150 m2.
• 6. Qui gère l’appartement où habite Atif?
• 7. Dans quel immeuble habite un retraité?
• 8. Qui habite un appartement de moins de 70 m2?
• 9. Nom des personnes qui habitent au dernier étage de leur immeuble.
• 10. Profession du gérant du Firdaous?
• 11. Age et profession des occupants de l’immeuble géré par Alami?
• 12. Qui habite, dans un immeuble de plus de 10 étages et un appartement de plus
de 100 m2?
Pr S.MOQQADDEM AU: 2021/2022

Vous aimerez peut-être aussi