1 1 Base de données relationnelle Système de gestion de base de données SGBDR H

1 1 Base de données relationnelle Système de gestion de base de données SGBDR Habiba Chaoui Filière Génie Informatique École Nationale des Sciences Appliquées de Kenitra Université Ibn Tofail Année Universitaire 2017/2018 2 Algèbre Relationnelle 1- Notion d’algèbre Relationnelle: L’algèbre relationnelle représente une collection d’opérations formelles pouvant être exécutées sur les relations d’un modèle de données logique relationnel (MLDR). On distingue:  Les opérations ensemblistes: Elles découlent de la théorie des ensembles. Elles permettent d’obtenir une nouvelle relation comme le résultat d’une opération d’ensemble sur 2 ou plusieurs relations. Exemple: union, intersection, différence,produit cartésien, etc…  Les opérations relationnelles: Elles sont propres à l’algèbre relationnelle. Elles peuvent utiliser:  Des opérateurs unaires ( sélection, projection)  Des opérateurs binaires: (jointure, division).  Les opérations complémentaires. Elles permettent de mettre en forme les résultats ou de faire une synthèse sur les données. Exemple: opérations de calcul, regroupement, comptage, tri, ect… 2 3 Exploitation du modèle logique de données relationnel (suite1) 1.1) les opérateurs ensemblistes: Opérateur UNION Formalisme: R = UNION ( R1, R2) Exemple: E1 = Enseignants affectés aux relations extérieures. E2 = Enseignants représentants syndicaux E1 N°Enseignant Nom_Enseignant E2 N°Enseignant Nom_enseignant 1 Idrissi 1 Idrissi 3 Chaoui 4 Amrani 4 Amrani 6 Raissi 5 Benzakour On désire obtenir l’ensemble des enseignants affectés aux relations extérieures et représentants syndicaux. R = UNION (E1, E2). R N°Enseignant Nom_Enseignant L’opérateur UNION porte sur 2 relations uni-compatibles, 1 Idrissi c’est à dire vérifiant les conditions suivantes: 3 Chaoui  Le même nombre d’attributs (relations de même degré) 4 Amrani  Les attributs sont définis dans le même domaine sémantique. 5 Benzakour La relation résultat R possède les mêmes attributs que E1 et E2 6 Raissi et la réunion des tuples de E1 et E2 avec élimination des doublons éventuels. 4 Opérateur INTERSECTION Formalisme: R = INTERSECTION ( R1, R2) Exemple: E1 = Enseignants affectés aux relations extérieures. E2 = Enseignants représentants syndicaux . On désire connaître les enseignants affectés aux relations extérieures qui sont des représentants syndicaux. R = INTERSECTION (E1, E2). R N°Enseignant Nom_Enseignant 1 Idrissi 4 Amrani L’opérateur INTERSECTION porte sur 2 relations uni-compatibles comme l’opérateur UNION. Les relations doivent avoir le même schéma La relation résultat R possède les attributs des relations d’origine et les tuples communs à chacune. 3 5 Opérateur DIFFERENCE Formalisme: R = DIFFERENCE ( R1, R2) Exemple: E1 = Enseignants affectés aux relations extérieures. E2 = Enseignants représentants syndicaux On désire connaître les enseignants affectés aux relations extérieures qui ne sont pas des représentants syndicaux. R = DIFFERENCe (E1, E2). R N°Enseignant Nom_Enseignant 3 Chaoui 5 Benzakour L’opérateur DIFFERENCE porte sur 2 relations uni-compatibles comme l’opérateur UNION. La relation résultat R possède les attributs des relations d’origine et les tuples de la 1ère relation qui n’appartiennent pas à la 2ème relation. 6 Opérateur PRODUIT CARTESIEN Formalisme: R = PRODUIT (R1, R2) Exemple: R1 = Étudiant R2 =Épreuve R1 N°Étudiant Nom R2 LibelléEpreuve Coefficient 101 X Informatique 5 102 Y Mathématiques 3 Gestion Financière 2 Examen = PRODUIT ( Étudiant, Épreuve). R N°Étudiant Nom LibelléEpreuve Coefficient 101 X Informatique 5 101 X Mathématiques 3 101 X Gestion Financière 2 102 Y Informatique 5 102 Y Mathématiques 3 102 Y Gestion Financière 2 Cet opérateur porte sur 2 relations de degré quelconque. La relation résultat possède les attributs de chacune des relations d’origine et des tuples sont formés par la concaténation de chaque tuple de la 1ère relation avec l’ensemble des tuples de la deuxième. 4 7 1-2) les opérateurs relationnels Opérateur PROJECTION Formalisme: R = PROJECTION ( R1, Liste des attributs) Exemple: R1 = Joueur Joueur N°Licence Catégorie Année naissance 101 Cadet 1983 212 Cadet 1982 375 Cadet 1983 427 Junior 1981 432 Junior 1981 512 Junior 1980 603 Junior 1979 R= PROJECTION (Joueur, N°Licence, Année naissance) R N°Licence Année naissance 101 1983 212 1982 375 1983 427 1981 432 1981 512 1980 603 1979 Cet opérateur ne porte que sur ne relation. Il permet de ne retenir que certains attributs spécifiés d’une relation. La relation résultat comporte tous les tuples de la relation d’origine à l’exception des doublons. 8 Opérateur SELECTION Formalisme: R = SELECTION (R1, Condition) R = SELECTION ( Joueur, Catégorie = ‘Cadet’ ET Année naissance > 1981) R N°Licence Catégorie Année naissance 101 CADET 1983 375 CADET 1983 L’opérateur SELECTION (ou restriction) ne porte que sur une relation. Il permet de ne retenir que les tuples répondant à une condition exprimée à l’aide des opérateurs arithmétiques ( =, >, <, <=, >=, <>) ou logiques de base ( ET, OU, NON). La relation résultat conserve tous les attributs de la relation d’origine. 5 9 Opérateur JOINTURE ( Equijointure) Formalisme: R = JOINTURE ( R1, R2, Condition d’égalité entre attributs) Exemple: R1= Produit R2 = Détail_Commande R1 Code Prod Libellé Prix unitaire R2 N°Cde Code Prod Quantité 590A Hd 1.6Go 1615 97001 590A 2 588J ScanerHP 1700 97002 515P 1 515P PrinterOKI 1820 97003 515P 3 Cet opérateur porte sur 2 relations qui doivent avoir au moins un attribut défini dans le même domaine sémantique. La condition de jointure peut porter sur l’égalité d’un ou plusieurs attributs définis dans le même domaine ( mais n’ayant pas forcement le même nom). Les tuples de la relation résultat sont formés par la concaténation des tuples des relations d’origine qui vérifient la condition de jointure. Les tuples doublons sont éliminés. Remarque: des jointures plus complexes que l’équijointure peuvent être réalisées en généralisant l’usage de la condition de jointure à d’autre critères de comparaison que l’égalité( <, >, <=, >=, <>) 10 Opérateur DIVISION Formalisme: R= DIVISION ( R1, R2) Exemple: R1 = Participer R2 = Épreuve R= DIVISION(Participer, Épreuve) Athlète Épreuve Épreuve Athlète Driss 200m 200m Driss Manu 400m 400m Driss 400m 110mh Khalid 110mH Driss 110mH Manu 200m Cet opérateur porte sur 2 relations qui doivent avoir au moins un attribut défini dans le même domaine sémantique. Tous les attributs du diviseur (ici Épreuve) doivent être des attributs du dividende (ici Participer) La relation dividende doit avoir au moins une colonne de plus que la relation diviseur. La relation résultat, le quotient, possède les attributs non communs aux deus relations initiales. La relation quotient est formée de tous les tuples qui, concaténés à chacun des tuples du diviseur (ici Épreuve) donnent tjs un tuple du dividende (ici Participer). 6 11 1-3) les opérateurs complémentaires Opérateur de TRI Formalisme: R= TRI( R1, Liste des attributs et options de tri) Exemple: R1 = Livraison R1 N°Client Date livraisonArticle Qté Prix unit -A: Tri ascendant 006 10-10-00 Filtre écran 10 250.00 -D: Tri descendant 015 08-05-01 printerHPLaserJet6L 2 3500.00 004 12-05-02 Calvier 102T 5 500.00 015 11-09-02 SourisPS-2 10 100.00 006 28-02-03 PrinterHP LaserJet6L 1 3500.00 002 03-11-03 HP Brio 64Mo-350Mhs 2 13000.00 R= TRI ( Livraison, N°Client-A, Date livraison-D, Article-A) R1 N°Client Date livraisonArticle Qté Prix unit 002 03-11-03 HP Brio 64Mo-350Mhs 2 13000.00 004 12-05-02 Calvier 102T 5 500.00 006 10-10-00 Filtre écran 10 250.00 006 28-02-03 PrinterHP LaserJet6L 1 3500.00 015 08-05-01 printerHPLaserJet6L 2 3500.00 015 11-09-02 SourisPS-2 10 100.00 Le tri s’effectue sur un ou plusieurs attributs, dans l’ordre croissant ou décroissant. La relation résultat a la même structure et le même contenu que la relation d’origine. 12 Attributs calculés et renommés Attributs calculés: un attribut calculé est un attribut dont les valeurs sont obtenues par des opérations arithmétiques portant sur des attributs de la même relation. Le calcul est spécifié lors d’une projection ou lors de l’utilisation d’une fonction. Exemple: R= PROJECTION( R0, att1, att2, att3, att4, att1*att2, att3+att2) Attributs renommés: il est possible de renommer n’importe quel attribut en faisant précéder de son nouveau nom (ALIAS) suivi de : . Exemple: R = PROJECTION ( R0, att1, att2, att3, att4, Alias: att1*att2, Alias: att3+att2). Exemple: R0 N°Client Datelivraison Article Qté Prix Unit 006 10-10-02 Filtre écran 10 250.00 015 16-11-02 PrinterHP LaserJet 6L 2 3500.00 004 03-11-02 Clavier 102T 5 500.00 R= PROJECTION (R0, Datelivraison, Article, Montant : Qté * Prix unit) R Datelivraison Article Montant 10-10-02 Filtre écran 2500.00 16-11-02 PrinterHP LaserJet 6L 7000.00 03-11-02 Calvier 102T 2500.00 7 13 Opérateur CALCULER Formalisme: R= CALCULER( R0, Fonction1, Fonction2,…) Exemple: R0 = Ligne_Commande R0 N°BonCommande CodeProd Qté PrixU. HT 96008 A10 10 83 96008 B20 35 32 96009 A10 20 83 96010 A15 4 110 96010 B20 55 32 On désire obtenir le chiffre d’affaire total HT, ainsi que le nombre total de produits commandés: R = CALCULER ( Ligne_Commande, Somme( qté), somme( Qté *PrixU. HT) R Somme(Qté) Somme (Qté*Prix.U.HT) 124 5810 Les calculs portent sur la relation R0. La relation résultat R ne comporte qu’une ligne avec autant de colonnes que de résultats demandés. La relation R peut utiliser des attributs nommés ( Alias): R Nbre_Produits_commndés Chiffre_Affaire_HT 124 5810 14 Opérateur REGROUPER et CALCULER Formalisme: R = REGROUPER_ET_CALCULER ( R0, att1, att2,.., Foncton1, Fonction2,…) Exemple: R0 = Ligne_Commande R0 N°BonCommande CodeProd Qté PrixU. HT 96008 A10 10 83 96008 B20 35 32 96009 A10 20 83 96010 A15 4 110 96010 B20 55 uploads/Management/4-algebre-relationnelle.pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Nov 16, 2022
  • Catégorie Management
  • Langue French
  • Taille du fichier 0.8285MB