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

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. • 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. Algèbre relationnelle Les opérateurs unaires (la sélection et la projection), Formalisme : R2 = SELECTION (R1, critère(s) ) • Exemple soit la relation personne: • Donner la liste des personnes dont l’ID>=5 Cela s’exprime par: R2 = SELECTION (personne, ID>=5 ) ID Nom Prénom 5 Benali Mohamed 1 Chetta ryad 12 Hella Assala 3 Zatout Anes Les opérateurs unaires (la sélection et la projection), Le contenu de R2 est comme suit: Les opérateurs unaires (la sélection et la projection), 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 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 Les opérateurs unaires (la sélection et la projection), 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 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 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 : NOM Prénom Benali Ryad Mahmoudi lydia Article Prix Livre 45 Montre 87 NOM Prénom Article Prix Benali Ryad Livre 45 Benali Ryad Montre 87 Mahmoudi lydia Livre 45 Mahmoudi lydia Montre 87 Personne Cadeaux Personne ×Cadeaux Produit cartésien 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 Jointure, thêta-jointure, jointure naturelle Exemple de jointure : NOM Prénom Age Benali Ryad 6 Mahmoudi lydia 42 Chetta Mohamed 16 AgeC Article Prix 99 livre 30 6 poupée 60 20 baladeur 45 10 déguisement 15 • 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 Jointure, thêta-jointure, jointure naturelle 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 • 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, 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. 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 Le RENOMMAGE Soit la relation R • 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 La DIVISION 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 Boisson 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 La DIVISION Donner la liste des consommateurs qui boivent les jus J2 et J4. Boire • 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) La DIVISION N°jus J2 J4 • 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 Matricule N°Jus M1 J1 M1 J3 M2 J3 M2 J2 M2 J4 M3 J4 M3 J2 La DIVISION R3 N°jus J2 J4 R2 On ne garde que les consommateurs de jus J2 et J4 c'est le quotient de la division. R4 = DIVISION (R3, R2) Matricule M2 M3 Remarque Une division est le quotient d'une relation dite dividende sur une autre relation dite diviseur. La DIVISION 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) Les opérateurs de calcul (ou agrégats) uploads/s3/cours8-algebre-relationnelle.pdf

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