Chapitre 5 Algebre Relationnelle
Chapitre 5 Algebre Relationnelle
Chapitre 5 Algebre Relationnelle
Objectifs :
Eléments de contenu
I. Introduction
II. Opérateurs ensemblistes
1. Opérateur d’union
2. Opérateur d’intersection
3. Opérateur de différence
4. Opérateur produit cartésien (x)
III. Opérateurs propres aux Bases de Données
1. Renommage (α)
2. Sélection (σ)
3. Projection (π)
4. Division (/)
5. Jointure ( )
I- Introduction
L’algèbre relationnelle est une collection d’opérateurs permettant de réaliser des opérations sur des
relations. Elle permet par exemple de sélectionner certains enregistrements d’une relation
satisfaisant une condition ou encore de regrouper des enregistrements de relations différentes.
Le résultat de l’application d’un opérateur sur une ou deux relations est une nouvelle relation.
Etant donnée, que le modèle relationnel est basé sur la théorie des ensembles, l’algèbre
relationnelle utilise les opérateurs classiques de manipulation des ensembles (union, intersection,
différence et produit cartésien) et introduit des opérateurs propres aux bases de données
(renommage, sélection, projection, jointure et division).
Ces opérateurs sont soit unaires soit binaires. Les opérateurs unaires impliquent un seul opérande:
sélection (noté σ), projection (π), renommage (α)
Les opérateurs binaires impliquent deux opérandes: produit cartésien, jointures, union,
intersection, différence, division.
Ces opérateurs sont l’union, l’intersection et la différence. Le produit cartésien porte sur des
relations qui ne sont pas de même schémas.
1- Opérateur d’union
Soient r et s, deux relations de schémas respectifs R et S.
Les schémas R et S doivent être union-compatibles. L’union des deux relations R ∪ S produit une
nouvelle relation de schéma identique à R et à S possédant les enregistrements appartenant à R ou
à S ou aux deux relations.
Exemple :
Produit1 Produit2
Produit1 U Produit2
NumP LibP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200
P002 Prise blanc 1.2 1.5 1000
P003 Câble blanc 2 25 1500
P004 Peinture blanc 25 36 900
P005 Fer Noir 50 90 800
P006 Serrure Jaune 2 47 1250
2- Opérateur d’intersection
Soient r et s, deux relations de schémas respectifs R et S. Les schémas R et S doivent être union-
compatibles. L’intersection des deux relations R ∩ S produit une nouvelle relation de schéma
identique à R et à S possédant les enregistrements appartenant conjointement à R et à S.
Exemple :
Produit1 Produit2
NumP LibP CoulP Poids PU Qte NumP LibP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200 P003 Câble blanc 2 25 1500
P002 Prise blanc 1.2 1.5 1000 P006 Serrure Jaune 2 47 1250
P003 Câble blanc 2 25 1500
P004 Peinture blanc 25 36 900
Produit1 ∩ Produit2
3- Opérateur de différence
Soient r et s, deux relations de schémas respectifs R et S. Les schémas R et S doivent être union-
compatibles. La différence des deux relations R-S produit une nouvelle relation de schéma
identique à R ou à S possédant les enregistrements présents dans R mais pas dans S.
Produit1 Produit2
NumP LibP CoulP Poids PU Qte NumP LibP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200 P003 Câble blanc 2 25 1500
P002 Prise blanc 1.2 1.5 1000 P006 Serrure Jaune 2 47 1250
P003 Câble blanc 2 25 1500
P004 Peinture blanc 25 36 900
Produit1 - Produit2
NumP LibP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200
P002 Prise blanc 1.2 1.5 1000
P004 Peinture blanc 25 36 900
P006 Serrure Jaune 2 47 1250
Exemple :
Client Produit
Exemple : Renommer l’attribut LibP par l’attribut DesignP dans la table Produit.
NumP LibP CoulP Poids PU Qte NumP DesignP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200 P001 Robinet Gris 5 18 1200
P002 Prise blanc 1.2 1.5 1000 P002 Prise blanc 1.2 1.5 1000
P003 Câble blanc 2 25 1500 P003 Câble blanc 2 25 1500
P004 Peinture blanc 25 36 900 P004 Peinture blanc 25 36 900
2- Sélection (σ)
La sélection appelée encore restriction est un opérateur unaire qui prend en entrée une relation r de
schéma R et produit en sortie une nouvelle relation de même schéma R ayant comme
enregistrements ceux de r satisfaisant la condition de sélection. Le but étant de sélectionner un
ensemble de tuples d’une relation, en fonction d’un critère de sélection (prédicat ou expression
logique de prédicats).
La condition de sélection utilise les opérateurs de comparaison (=, <, <=, >, >=, != ), les
connecteurs logiques (et, ou, non) et les parenthèses.
NumP LibP CoulP Poids PU Qte NumP LibP CoulP Poids PU Qte
P001 Robinet Gris 5 18 1200 P002 Prise blanc 1.2 1.5 1000
P002 Prise blanc 1.2 1.5 1000 P003 Câble blanc 2 25 1500
P003 Câble blanc 2 25 1500 P004 Peinture blanc 25 36 900
P004 Peinture blanc 25 36 900
3- Projection (π)
La projection est un opérateur unaire qui prend en entrée une relation r de schéma R (A 1,A2... An)
et produit en sortie une nouvelle relation de schéma (A1, A2, ..., Ai) inclus dans R ayant comme
enregistrements ceux de r restreints à ce sous-schéma (A1, A2, ..., Ai). Le but de la projection étant
de ne retenir que certains attributs dans une relation. A l’issue d’une projection, la relation
résultante peut contenir des doublons.
4- Division (/)
Le résultat de la division d’une relation R(X, Y) par une relation S (Y) est une relation Q(X) définie
par :
2) Les tuples qj de Q tels que, quels que soit les tuples si de S, le tuple (qj,si) est un tuple de R
(c'est-à-dire QXS⊆R).
Exemple : Quelles sont les commandes qui portent sur tous les produits ?
5- Jointure ( )
Soient r et s deux relations de schémas respectifs R et S. La jointure de R et S, selon une condition
que doivent vérifier les valeurs des tuples, est l’ensemble des tuples du produit cartésien R x S
satisfaisant cette condition. Donc on peut la considérer comme un produit cartésien suivi d’une
sélection.
La relation résultant de la jointure possède comme schéma l'union des deux schémas R et S et
comme enregistrements la concaténation des enregistrements de R avec ceux de S qui répondent à
la condition de sélection.
La condition de sélection utilise les opérateurs de comparaison (=;<; <=; >; >=; != ), les
connecteurs logiques (et, ou, non) et les parenthèses.
Lorsque le critère de sélection est l’égalité, on parle d’équi-jointure sinon on parle de Théta-
jointure.
Exemple1 : soit la base de données commerciale suivante. Quels sont les clients qui ont passé des
commandes.
Client Commande
Exemple 2 : Quels sont les clients qui n’ont pas passé des commandes le 10/12/2009 ?
Client Commande