Vous êtes sur la page 1sur 42

Algèbre relationnelle

Dans une base de donnée relationnelle, les données sont


enregistrées dans des tableaux à 2 dimensions, appelés relations ou
tables. La première dimension est représentée par les lignes et la
deuxième dimension par les colonnes.
La manipulation de ces données est basée sur la théorie
mathématique des ensembles.
L’algèbre relationnelle est la base théorique sur laquelle la
construction des langages d’interrogation de base de données
relationnelles s’est construite.
Algèbre relationnelle
• L’algèbre relationnelle est le support mathématique
cohérent sur lequel repose le modèle relationnel.
• L’algèbre relationnelle propose un ensemble
d’opérations élémentaires formelles sur les relations
dans le but de créer de nouvelles relations.
• Ces opérations permettent de représenter des
requêtes sur la base de données dont le résultat
s’exprime sous la forme d’une relation (i.e. table).
– C’est ce formalisme qui est au cœur du langage de requête
de SQL.
Algèbre relationnelle
• L’algèbre relationnelle est la base théorique sur
laquelle la construction des langages
d’interrogation de base de données relationnelles
s’est construite. Il existe plusieurs langages mais
aujourd’hui le plus utilisé est SQL.
• Sous certains SGBDR grand public comme
Access, les utilisateurs débutants utilisent aussi
QBE (query by exemple), qui est un langage de
requête visuel, basé sur l’algèbre relationnelle.
Algèbre relationnelle
Nous pouvons distinguer trois familles d’opérateurs
relationnels :
 Les opérateurs unaires ou opérations à un seul opérande (la
sélection et la projection), qui sont les plus simples,
permettent de produire une nouvelle table à partir d’une
table de base.
 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.
Les opérateurs unaires (la sélection et
la projection),

Formalisme : R2 = SELECTION (R1, critère(s) )


Les opérateurs unaires (la sélection et
la projection),
• Exemple soit la relation personne:
ID Nom Prénom
5 Benali Mohamed
1 Chetta ryad
12 Hella Assala
3 Zatout Anes

• Donner la liste des personnes dont l’ID>=5


Cela s’exprime par:
R2 = SELECTION (personne, ID>=5 )
Les opérateurs unaires (la sélection et
la projection),

Le contenu de R2 est comme suit:

ID Nom Prénom
5 Benali Mohamed
12 Hella Assala

La sélection génère une relation regroupant exclusivement


toutes les occurrences de la relation R qui satisfont l’expression
logique E. 2ème Notation : σ(E)R.
σ(ID≥5) PERSONNE
Les opérateurs unaires (la sélection et
la projection),
Projection:
• La projection consiste en la mise en place
d'une nouvelle relation en ne retenant que
certaines colonnes (attributs) A1, A2,..,An
d’une relation et à éliminer les n-uplets en
double apparaissant dans la nouvelle version.
Formalisme :
 R2 = PROJECTION (R1, A1, A 2, …An)
 R2= π( A1, A2,..,An)R1
Les opérateurs unaires (la sélection et
la projection),
• Projection:
En d’autres termes, la projection permet de
choisir des colonnes dans une table. Si R est
vide, la relation qui résulte de la projection est
vide, mais pas forcément équivalente étant
donné qu’elle contient généralement moins
d’attributs.
Exemple de projection sur la table PERSONNE :
Les opérateurs unaires (la sélection et
la projection),
• Exemple de projection sur la table PERSONNE
Π(Nom) Personne
Benali
Chetta
Hella
Zatout

Exemple 2: Donner les nom des personnes dont ID>=5


Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Exercice
Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Les opérateurs binaires ensemblistes(Union,
Intersection, Différence
Produit cartésien

Notation : R1 × R2.
Produit cartésien

• 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’occurrences de la relation qui
résulte du produit cartésien est le nombre
d’occurrences de R1 multiplié par le nombre
d’occurrences de R2.
Produit cartésien

• Exemple :
Cadeaux
Personne
NOM Prénom Article Prix
Benali Ryad Livre 45
Mahmoudi lydia Montre 87

NOM Prénom Article Prix

Benali Ryad Livre 45


Personne ×Cadeaux
Benali Ryad Montre 87
Mahmoudi lydia Livre 45
Mahmoudi lydia Montre 87
Produit cartésien
Jointure, thêta-jointure, jointure
naturelle
Jointure : La jointure est une opération portant sur deux
relations R1 et R2 qui construit une troisième relation
regroupant exclusivement toutes les possibilités de
combinaison des occurrences des relations R1 et R2 qui
satisfont l’expression logique E.
La jointure est notée : R1 ⋈E R2.
En fait, la jointure n’est rien d’autre qu’un produit
cartésien suivi d’une sélection :
Jointure, thêta-jointure, jointure
naturelle
Exemple de jointure :
AgeC Article Prix
NOM Prénom Age
99 livre 30
Benali Ryad 6
Mahmoudi lydia 42
6 poupée 60
Chetta Mohamed 16
20 baladeur 45
10 déguisement 15
Jointure, thêta-jointure, jointure
naturelle
• PERSONNE ⋈( (âge < âgeC) ) CADEAU
NOM Prénom Age AgeC Article Pri
x

Benali Ryad 6 99 livre 30


Benali Ryad 6 20 baladeur 45
Benali Ryad 6 10 déguisement 15
Mahmoudi lydia 42 99 livre 30
Mahmoudi lydia 42 10 déguisement 15
Chetta Mohamed 16 99 livre 30
Chetta Mohamed 16 20 baladeur 45
Cette jointure permet de générer toutes les possibilités d’association entre
un cadeau et une personne en respectant l’âge maximum conseillé pour un
cadeau
Jointure, thêta-jointure, jointure
naturelle
• 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=A2R2.
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.
Le RENOMMAGE
Le RENOMMAGE
• Condition: Les attributs intervenant dans les
mappings sont bien des attributs présents
dans la relation interrogée (R).
• Ce qui est retourné: l’ensemble des tuples de
R avec un schéma correspondant aux
transformations définies dans les mappings.
Le RENOMMAGE
Soit la relation R
La DIVISION
• La division de la relation r de schéma R(A1,A2,...,An)
par la sous-relation s de schéma S(Ap+1,...,An) est une
relation q de schéma Q(A1,...,Ap) formée de tous les
tuples, qui concaténés à chacun des tuples de s donne
toujours un tuple de r.

 La division permet de trouver les occurrences d’une


table qui sont associées à toutes les occurrences
d’une autre table.
 Formalisme :
R = DIVISION (dividende, diviseur) ou R = dividende/
diviseur attention au sens
La DIVISION
Boisson
N°jus Intitué Degré
J1 Orangina 13
J2 Ngaous 11
J3 Coca 12,5
J4 Fanta 12
• Consommateur
Mat NOM Adresse
M1 Chetta Oran
M2 Zatout TiZI
M3 Bot Tlemcen
La DIVISION
Boire
Matricule N°Jus Quantité_bue
M1 J1 1

M1 J3 2

M2 J3 1

M2 J2 3
M2 J4 2

M3 J4 1

M3 J2 4

Donner la liste des consommateurs qui boivent les jus J2 et J4.


La DIVISION
• Donner la liste des consommateurs qui
boivent les jus J2 et J4.
• 1) On sélectionne les jus j2 et j4 dans la
relation Boisson
• R1 = SELECTION (Boisson, n°jus= j2 ou n°jus =
j4)
N°jus Intitué Degré
J2 Ngaous 11
J4 Fanta 12
La DIVISION
• On ne garde que la colonne n°jus (pas besoin
des autres) è c'est le diviseur de
la division.
R2 = PROJECTION (R1, n°jus)
N°jus
J2
J4
La DIVISION

• On garde, dans la relation BOIRE, que les


colonnes Matricule et n°jus (ensemble
• des consommateurs de jus) c'est le dividende
de la division.
• R3 = PROJECTION (BOIRE, Matricule, n°jus)
La DIVISION
R3

Matricule N°Jus
M1 J1 R2

N°jus
M1 J3
J2
M2 J3 J4

M2 J2
M2 J4

M3 J4

M3 J2
La DIVISION

On ne garde que les consommateurs de jus J2 et


J4 c'est le quotient de la division.
R4 = DIVISION (R3, R2)

Matricule Remarque
M2 Une division est le quotient
M3 d'une relation dite dividende
sur une autre relation dite
diviseur.
Les opérateurs de calcul (ou agrégats)
1. Le compte
• Il permet de dénombrer les lignes d’une
relation qui ont une même valeur d’attribut.
La relation résultante ne contient que
l’attribut et le compte.
Formalisme : R2 = COMPTE (R1,
attributRegroupement)
Les opérateurs de calcul (ou agrégats)
Matricule N°Jus Quantité_bue
M1 J1 1

M1 J3 2

M2 J3 1

M2 J2 3
M2 J4 2

M3 J4 1

M3 J2 4

Donner le nombre de jus consommés par consomateur.


Les opérateurs de calcul (ou agrégats)
R1 : COMPTE ( BOIRE, matricule)
Matricule COMPTE
M1 2

M2 3

M3 2
Les opérateurs de calcul (ou agrégats)
2. Le cumul:
Il permet de faire la somme des valeurs d’un
attribut A1 des lignes qui ont la même valeur
d’attribut A2. La relation résultante ne
contient que l’attribut A2 et le cumul de
l’attribut A1.
Formalisme :
R2 = CUMUL (R1, attributRegroupement,
attributCalcul)
Les opérateurs de calcul (ou agrégats)
On fait la somme de l’attribut attributCalcul
selon les valeurs de l’attribut
attributRegroupement.
R2 = CUMUL (R1, attributRegroupement, attributCalcul)
Les opérateurs de calcul (ou agrégats)
Donner la somme des quantités bues par les
consommateurs.
Matricule N°Jus Quantité_bue
M1 J1 1

M1 J3 2

M2 J3 1

M2 J2 3
M2 J4 2

M3 J4 1

M3 J2 4
Les opérateurs de calcul (ou agrégats)

R1 : CUMUL ( BOIRE, matricule, quantité bue)

Matricule Cumul
M1 3

M2 6

M3 5

Remarque :
Certains auteurs acceptent d’autres opérateurs de calcul tels que
maximum.

Vous aimerez peut-être aussi