1 Algèbre Relationnel Sommaire I. Introduction ................................

1 Algèbre Relationnel Sommaire I. Introduction ..................................................................................................................................... 2 II. Opérateurs unaires .......................................................................................................................... 2 A. La projection : ............................................................................................................................ 2 B. La sélection (ou restriction): .................................................................................................... 3 III. Opérateurs binaires ensemblistes ............................................................................................... 4 A. Union : ........................................................................................................................................ 4 B. Intersection : .............................................................................................................................. 5 C. Différence : ................................................................................................................................ 6 IV. Opérateurs n-aires ....................................................................................................................... 7 A. Produit cartésien : ..................................................................................................................... 7 B. Jointure :..................................................................................................................................... 8 C. Division cartésienne : .............................................................................................................. 9 V. Fonctions d’agrégation .................................................................................................................. 10 2 I. Introduction L’algèbre relationnelle a été inventée par E. Codd comme une collection d’opérations formelles qui agissent sur des relations et produisent des relations en résultats. On peut considérer que l’algèbre relationnelle est aux relations ce qu’est l’arithmétique aux entiers. Cette algèbre, qui constitue un ensemble d’opérations élémentaires associées au modèle relationnel, est sans doute une des forces essentielles du modèle. Codd a initialement introduit huit opérations, dont certaines peuvent être composées à partir d’autres. Dans ce chapitre, nous allons classer les opérateurs d’algèbre relationnel selon le nombre des opérandes (ici des relations ou tables) sur lesquels on peut appliquer cet opérateur.  Les opérateurs unaires sont les opérateurs qui, à partir d’une seule relation, en construisent une autre.  Les opérateurs binaires ensemblistes sont des opérateurs qui à partir de deux relations elles en construisent une troisième.  Les opérateurs n-aires sont des opérateurs qui à partir de plusieurs relations elles en construisent une nouvelle. II. Opérateurs unaires A. La projection : Définition : Opération sur une relation RELATION1 consistant à composer une relation RELATION2 en enlevant à la relation initiale tous les attributs non mentionnés en opérandes (aussi bien au niveau du schéma que des tuples) et en éliminant les tuples en double qui sont conservés une seule fois. Notation : R2 =  attributs (R1) ou R2 = PROJECTION( R1 , attributs ) Exemples : Soit la relation suivante : eleves(num, nom, prenom, age) num nom prenom age 1 Kourchi Khalid 23 2 Essafi Tarik 22 3 Sahi Youssef 20 4 Malki Nada 21 5 Essafi Noha 22 3 R1 = nom , prenom (eleves) La relation résultat R1 est : nom prenom Kourchi Khalid Essafi Tarik Sahi Youssef Malki Nada Essafi Noha R2 =  nom (eleves) La relation résultat R2 est : nom Kourchi Essafi Sahi Malki B. La sélection (ou restriction): Définition : Opération sur une relation RELATION1 produisant une relation RELATION2 de même schéma, mais comportant les seuls tuples qui vérifient la condition précisée en argument. Dans la condition on peut utiliser tous les opérateurs de comparaison et logique déjà vu. >, >=, <, <=, ≠, et, ou Notation : R2 = condition (R1) ou R2 = SELECTION(R1 , condition) Exemples : Soit la relation suivante : eleves(num, nom, prenom, age) num nom prenom age 1 Kourchi Khalid 23 2 Essafi Tarik 22 3 Sahi Youssef 20 4 Malki Nada 21 5 Essafi Noha 22 R1 = age >= 22 (eleves) La relation résultat R1 est : num nom prenom age 1 Kourchi Khalid 23 2 Essafi Tarik 22 5 Essafi Noha 22 R2 =  nom = 'Essafi' (eleves) La relation résultat R2 est : num nom prenom age 2 Essafi Tarik 22 5 Essafi Noha 22 4 III. Opérateurs binaires ensemblistes A. Union : Définition : Opération portant sur deux relations de même schéma RELATION1 et RELATION2 consistant à construire une relation de même schéma RELATION3 ayant pour tuples ceux appartenant à RELATION1 ou RELATION2 ou aux deux relations. Notation : R3 = R1 U R2 ou R3 = UNION( R1 , R2 ) Exemples : Soit la relation suivante : eleves_sup(num, nom, prenom, age) num nom prenom age 1 Kourchi Khalid 23 2 Essafi Tarik 22 3 Sahi Youssef 20 4 Malki Nada 21 5 Essafi Noha 22 Et soit la relation suivante : eleves_spe(num, nom, prenom, age) num nom prenom age 6 Rafik Youssef 21 7 Naya Ayman 22 R3 = eleves_sup U eleves_spe La relation résultat R3 est : num nom prenom age 1 Kourchi Khalid 23 2 Essafi Tarik 22 3 Sahi Youssef 20 4 Malki Nada 21 5 Essafi Noha 22 6 Rafik Youssef 21 7 Naya Ayman 22 5 B. Intersection : Définition : Opération portant sur deux relations de même schéma RELATION1 et RELATION2 consistant à construire une relation de même schéma RELATION3 ayant pour tuples ceux appartenant à la fois à RELATION1 et RELATION2. Notation : R3 = R1 ∩ R2 ou R3 = INTERSECTION( R1 , R2 ) Exemples : Soit la relation suivante : eleves_sup(num, nom, prenom, age) num nom 1 Kourchi 2 Essafi 3 Sahi 4 Malki 5 Essafi Et soit la relation suivante : eleves_spe(num, nom, prenom, age) num nom 1 Sahli 2 Essafi 3 Salmi R3 = eleves_sup ∩ eleves_spe La relation résultat R3 est : num nom 2 Essafi 6 C. Différence : Définition : Opération portant sur deux relations de même schéma RELATION1 et RELATION2, consistant à construire une relation de même schéma RELATION3 ayant pour tuples ceux appartenant à RELATION1 et n’appartenant pas à RELATION2. Notation : R3 = R1 – R2 ou R3 = DIFFERENCE(R1 , R2) Exemples : Soit les relations suivantes : R1 : Enseignants élus au CA R2 : Enseignants représentants syndicaux numero nom_enseignant numero nom_enseignant 1 DUPONT 1 DUPONT 3 DURAND 4 MARTIN 4 MARTIN 6 MICHEL 5 BERTRAND R3 = R1 – R2 La relation résultat R3 est : numero nom_enseignant 3 DURAND 5 BERTRAND 7 IV. Opérateurs n-aires A. Produit cartésien : Définition : Opération portant sur deux relation RELATION1 et RELATION2, consistant à construire une relation RELATION3 ayant pour schéma la concaténation de ceux des relations opérandes et pour tuples toutes les combinaisons des tuples des relations opérandes. Notation : R3 = R1 x R2 ou R3 = PRODUIT( R1 x R2 ) Exemples : Etudiants Epreuves num_etudiant nom libelle_epreuve coefficient 101 DUPONT Informatique 2 102 MARTIN Mathématiques 3 Gestion financière 5 Examen = PRODUIT (Etudiants, Epreuves) Examen num_etudiant nom libelle_epreuve coefficient 101 DUPONT Informatique 2 101 DUPONT Mathématiques 3 101 DUPONT Gestion financière 5 102 MARTIN Informatique 2 102 MARTIN Mathématiques 3 102 MARTIN Gestion financière 5 8 B. Jointure : La jointure est une des opérations essentielles de l’algèbre relationnelle, sans doute la plus difficile à réaliser dans les systèmes. La jointure permet de composer deux relations à l’aide d’un critère de jointure. Elle peut être vue comme une extension du produit cartésien avec une condition permettant de comparer des attributs. Définition : Opération consistant à rapprocher selon une condition les tuples de deux relations RELATION1 et RELATION2 afin de former une troisième relation RELATION3 qui contient l’ensemble de tous les tuples obtenus en concaténant un tuple de RELATION1 et un tuple de RELATION2 vérifiant la condition de rapprochement. Notations : R3 = R1 condition R2 Exemples : Professeur Nom Prénom NumMat AA AA 1 BB AA 2 CC CC 1 DD DD 3 EE EE 4 Matière Num Designation 1 Informatique 2 Mathématique 3 Physique R = Professeur NumMat = Num Matière R Nom Prénom NumMat Num Designation AA AA 1 1 Informatique BB BB 2 2 Mathématique CC CC 1 1 Informatique DD DD 3 3 Physique Remarque : Jointure naturelle : Opération consistant à rapprocher les tuples de deux relations RELATION1 et RELATION2 afin de former une troisième relation RELATION3 dont les attributs sont l’union des attributs de RELATION1 et RELATION2, et dont les tuples sont obtenus en composant un tuple de RELATION1 et un tuple de RELATION2 ayant mêmes valeurs pour les attributs de même nom. R3 = R1 R2 9 Famille Nom Prénom Age Fourt Lisa 6 Juny Carole 40 Fidus Laure 20 Choupy Emna 6 Cadeau Age Article Prix 40 Livre 45 6 Poupée 25 20 Montre 87 R = Famille Cadeau R Nom Prénom Age Article Prix Fourt Lisa 6 Poupée 25 Juny Carole 40 Livre 45 Fidus Laure 20 Montre 87 Choupy Emna 6 Poupée 25 C. Division cartésienne : 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’occurrences de la relation R1 qui sont associées à toutes les occurrences de la relation R2. Notation : R3 = DIVISION(R1, R2) ou R3 = R1 ÷ R2 Exemples : professeurs Professeur Matiere Langue P1 M1 FR P2 M1 EN P3 M2 FR P1 M1 EN P1 M2 FR qualités Matière Langue M1 FR M1 EN 10 R = professeurs ÷ qualités R Professeur P1 V. Fonctions d’agrégation En algèbre relationnel on a la possibilité d’effectuer des calculs sur les attributs ce calcule peut être effectué en ligne par des expressions arithmétiques sur les attributs ou en colonne par les fonctions agrégatives. Expressions de calcul : ventes client produit prix quantité Ali PC 3000 2 Ahmed Clavier 50 10 Rachid Souris 20 50 R = PROJECTION( ventes, client, produit, prix * quantité ) ou R =  client, produit, prix * quantité ( ventes) Le résultat est uploads/Philosophie/ cours-chapitre-2-algebre-relationnel 1 .pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager