La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

COURS 2 Eléments d algèbre relationnelle. 2 Motivation : Interroger des bases de données Quest-ce quune requête ? une expression dans une algèbre dite.

Présentations similaires


Présentation au sujet: "COURS 2 Eléments d algèbre relationnelle. 2 Motivation : Interroger des bases de données Quest-ce quune requête ? une expression dans une algèbre dite."— Transcription de la présentation:

1 COURS 2 Eléments d algèbre relationnelle

2 2 Motivation : Interroger des bases de données Quest-ce quune requête ? une expression dans une algèbre dite algèbre relationnelle. i.e., des opérations sur des tables l Filtrer : Sélection (filtre / critères) Projection (choix de colonnes) Différence (suppression de lignes) l Combiner : Produit cartésien (toutes les possibilités) Jointure (complément d'information) Union (union d'ensembles de lignes)

3 3 Quelques définitions l Ligne Une ligne L est une séquence de valeurs Vi, L = l Extraction La ligne construite à partir de L est notée L(i) l Concaténation Soient deux lignes L1 = et L2 =, la concaténation de L1 et de L2, notée L1L2 est : L1L2 = l Table Une table est un ensemble de lignes

4 4 Sélection (restriction) l Sélection / constante : Personnes habitant Lyon l Sélection / critère inter-colonnes : Personnes nées dans la ville dhabitation

5 5 Sélection (restriction) l Autre comparateur : Personnes nayant pas plus de 14 ans l Composition de sélections : Habitants de Lyon nayant pas plus de 14 ans l Conjonction de critères :

6 6 Sélection (restriction) l Autre comparateur : Personnes nayant pas plus de 14 ans l Composition de sélections : Habitants de Lyon nayant pas plus de 14 ans l Conjonction de critères :

7 7 Une formalisation de la sélection (restriction) l Sélection / constante : L'ensemble des lignes L de la table T telles que L(i)=a est noté i=a (T) i=a (T) = { L | L dans T et L(i) = a } l Sélection / inter-colonnes : L'ensemble des lignes L de la table T telles que L(i)=L(j) est noté i=j (T) i=j (T) = { L | L dans T et L(i) = L(j) } Autres comparateurs : peuvent être employés à la place de = l Conjonction de comparaisons : Pour alléger les notations des conjonctions de critères de sélection peuvent être employées

8 8 Projection l Projection sur les colonnes 1 et 2 : l Projection sur les colonnes 1 et 3 : (renumérotation des colonnes)

9 9 Composition (Combinaison) l Quels sont les noms des personnes habitant Lyon ? 1) Sélection : 2)... suivie d'une projection :

10 10 Une formalisation de la projection l Projection sur colonnes : L'ensemble des lignes de la table T obtenues en ne conservant que les colonnes de numéros i 1, i 2,..., i k est noté i1,i2,..., ik (T) i1,i2,..., ik (T) = { L(i 1 )L(i 2 )... L(i k ) | L dans T } l Retour sur la composition : le principe de clôture e.g., des sélections et des projections NB. Propriété fondamentale pour expliquer le confort des interrogations

11 11 Produit cartésien l Quels sont tous les couples homme-femme ? homme femme l Quels sont les couples homme-femme dune même ville ? c2 = c4 ( homme femme )

12 12 Produit cartésien l Dans quels départements habitent les personnes de la table homme ? 1) Combinaison par produit (homme ville) (Noter la renumérotation des colonnes) l Quels sont les couples homme-femme dune même ville ? c2 = c4 ( homme femme )

13 13 Produit cartésien 2)... suivi d'une sélection : c2 = c3 ( homme ville ) =

14 14 Une formalisation du produit cartésien L'ensemble des lignes pouvant être obtenues par concaténation d'une ligne d'une table T1 avec une ligne d'une table T2 est noté T1 T2 T1 T2 = { L1L2 | L1 dans T1 et L2 dans T2 } Le produit T1 T2 est souvent suivi d'une sélection dans laquelle intervient une colonne issue de T1 et une colonne issue de T2 définition d'un nouvel opérateur : la jointure

15 15 Jointure l Couples homme-femme d'une même ville ?

16 16 Jointure l Dans quels départements habitent les hommes ?

17 17 Une formalisation de la jointure {combinaison par produit cartésien et sélection} L'ensemble des lignes L pouvant être obtenues par concaténation d'une ligne L1 d'une table T1 avec une ligne L2 d'une table T2 telle que L1(i) = L2(j) est noté : Cette opération est appelée jointure de T1 avec T2

18 18 Une formalisation de la jointure Lien avec le produit cartésien et la sélection Soit m le nombre de colonnes de T1, est identique à i = (j+m) (T1 T2) Remarque : comme pour la sélection, les comparateurs ainsi que les conjonctions de critères peuvent être employés

19 19 Union l Quel est lensemble des personnes ? l Quel est l'ensemble des personnes habitant Lyon ?

20 20 Formalisation des deux opérations Une formalisation de lunion (ensembliste) Soient T1 et T2 deux tables ayant même nombre de colonnes, l'ensemble contenant les lignes de T1 ainsi que celles de T2 est noté T1 T2 T1 T2 = { L | L dans T1 ou L dans T2 } Une formalisation de la différence (ensembliste) Soient T1 et T2 deux tables ayant même nombre de colonnes, l'ensemble contenant les lignes de T1 ne se trouvant pas dans T2 est noté T1 - T2 T1 - T2 = { L | L dans T1 et L n'est pas dans T2 }

21 21 Arbre et transformation de requêtes l Quels sont les couples possibles avec une femme de Lyon et un homme de Nice ? 2*3+2*2+4*6+4*2 = 2*3+2*2+2*2+2*1+1*2+1*1 = 42 cases manipulées19 cases manipulées c1, c3 4 col, 2 lig c2="Lyon" and c4="Nice" femmehomme 4 col, 6 lig 2 col, 3 lig 2 col, 2 lig femmehomme c1 c2="Lyon" c2="Nice" 2 col, 3 lig2 col, 2 lig 2 col, 1 lig 1 col, 1 lig1 col, 2 lig


Télécharger ppt "COURS 2 Eléments d algèbre relationnelle. 2 Motivation : Interroger des bases de données Quest-ce quune requête ? une expression dans une algèbre dite."

Présentations similaires


Annonces Google