• Aucun résultat trouvé

Cours de Base de Données Cours n.3 Algèbre relationnelle

N/A
N/A
Protected

Academic year: 2022

Partager "Cours de Base de Données Cours n.3 Algèbre relationnelle"

Copied!
32
0
0

Texte intégral

(1)

Cours de Base de Donn ´ees Cours n.3

Alg `ebre relationnelle

L2 Informatique - Portail Siences et Technologies

Elisabetta De Maria - http://www.i3s.unice.fr/∼edemaria/

DS4H et Laboratoire I3S, CNRS

2022-2023 Universit ´e C ˆote d’Azur

(2)

Alg `ebre relationnelle

• Langage proc ´edural : indique comment construire une nouvelle relation `a partir d’une ou plusieurs relations existantes

• Langage abstrait, avec des op ´erations qui travaillent sur une (ou plusieurs) relation(s) pour d ´efinir une nouvelle relation sans changer la (ou les) relation(s) originale(s)

• le r ´esultat de toute op ´eration est une relation (propri ´et ´e de fermeture)

(3)

Les op ´erations de l’alg `ebre relationnelle

Les cinq op ´erations fondamentales

• s ´election

• projection

• produit cart ´esien

• union

• diff ´erence

Autres op ´erations

• jointure

• intersection

• division

• ...

(4)

Op ´erateurs alg ´ebriques

Op ´erateurs ensemblistes

• union

• intersection

• difference

• produit

Op ´erateurs relationnels sp ´ecifiques

• s ´election

• projection

• jointure

• division

(5)

Tables d’exemple

• CLIENT(num ´ero, nom, adresse, t ´el ´ephone)

• PRODUIT (r ´ef ´erence, marque, prix)

• VENTE(num ´ero, ref produit#, no client#, date)

numéro nom adresse téléphone 101 Durand Nice 0493939393 106 Fabre Paris NULL 110 Prosper Paris NULL 125 Antonin Marseille 0491919191

référence marque prix numéro ref_produit# no_client# date

153 BMW 8  000  € 102 153 101 12/10/2004

589 Peugeot 7  450  € 809 589 108 20/01/2005

158 Toyota 6  725  € 11005 158 108 15/03/2005

589 Citroën 7  000  € 12005 589 125 30/03/2005

Client

Vente Produit

(6)

Op ´erations unaires

SoitR(a1,a2, ...,aN)une relation.

S ´election :σpredicat(R)

La s ´election travaille surRet d ´efinit une relation qui ne contient que les tuples deRqui satisfont `a la condition (ou pr ´edicat) sp ´ecifi ´ee.

Projection :πa1,...,ak(R)

La projection travaille surRet d ´efinit une relation restreinte `a un sous-ensemble des attributs deR, en extrayant les valeurs des attributs sp ´ecifi ´es et en supprimant les doublons.

(7)
(8)
(9)
(10)
(11)

Op ´erations ensemblistes (1)

SoientR(a1, ...,aN)etS(b1, ...,bM)deux relations.

Union : R∪S

L’union de deux relationsR etSd ´efinit une relation qui contient tous les tuples deR, deSou `a la fois deRetS, les tuples en double ´etant ´elimin ´es.

Diff ´erence d’ensembles :R−S

La diff ´erence d’ensemble d ´efinit une relation qui comporte les tuples qui existent dans la relationRet non dans la relationS.

Intersection :R∩S

L’intersection d ´efinit une relation constitu ´ee de l’ensemble de tous les tuples pr ´esents `a la fois dansR et dansS.

Relations compatibles envers l’union

(12)

Op ´erations ensemblistes (2)

Produit cart ´esien :R×S

Le produit cart ´esien d ´efinit une relation constitu ´ee de la concatenation de tous les tuples de la relationRavec tous ceux de la relationS

Relations de schemas quelconques

(13)
(14)
(15)
(16)
(17)
(18)

Op ´erations de jointure

Jointure th ˆeta (θ-join) :R ./P S

La th ˆeta-jointure d ´efinit une relation qui contient les tuples qui satisfont le pr ´edicatPdu produit cart ´esien deRetS. Le pr ´edicatP est de la formeR.aiθS.bj o `uθest l’un des op ´erateurs de comparaison (<,≤,>,≥,=,6=).

Si le pr ´edicatPest l’ ´egalit ´e (=), on parle d’´equijointure Jointure naturelle :R∗S

La jointure naturelle est une ´equijointure des relationsR etS sur tous les attributs communs en retirant les occurrences multiples d’attributs.

(19)
(20)
(21)
(22)
(23)
(24)

Op ´eration de division

Supposons que la relationRsoit d ´efinie sur l’ensemble d’attributsAet que la relationSsoit d ´efinie sur l’ensemble d’attributsB, de telle sorte queB ⊆A. SoitC=A−B.

DivisionR÷S

La division d ´efinit une relation sur les attributsC, constitu ´ee de l’ensemble des tuples deRqui correspondent `a la combinaison detous lestuples deS.

• T1C(R)

• T2C((S×T1)−R)

• T =T1−T2

(25)
(26)
(27)

Autres jointures

Jointure externe (gauche) entreRetS

La jointure externe gauche est une jointure dans laquelle les tuples de la relationRqui n’ont pas n ´ecessairement de valeur correspondente dansSparmi les attributs communs deRetS, sont ´egalement inclus dans la relation r ´esultante. Les valeurs manquantes dans la seconde relation sont mises `a nul.

Jointure externe droite: le r ´esultat conserve tous les tuples de la relation de droite

Jointure externe complete: le r ´esultat reprend tous les tuples de deux relations et remplit de nuls les attributs absents pour tous les cas de non-correspondence Semi-jointure entreRetS

La semi-jointure d ´efinit une relation qui contient les tuples deR qui participent `a la jointure deR avecS.

(28)
(29)
(30)
(31)

Fonctions des op ´erateurs

(32)

Références

Documents relatifs

Le problème que nous considérons ici est la détermination, pour une relation $(A\ d'un système de projecteurs qui assure la non redondance des données et soit « optimal »

Quant à XSLT, il s'agit d'un langage basé sur un modèle qui vous permet de mapper un certain modèle dans le document source et d'écrire le résultat en XML, en HTML ou en texte

toute expression logique de prédicat de 1-er ordre – note: seulement 5 sont primitives (lesquels ?). • La puissance expressive de l'algèbre

Définition : opération entre deux relations n’ayant pas d’attributs de même nom, qui retourne une relation ayant pour schéma

De même dans une gestion de bibliothèque, plusieurs livres ont le même auteur, une base de données permet d'éviter de répéter toutes les informations sur l'auteur pour chaque

Il faut remarquer que les donn´ees sont accessibles directement, alors que les syst`emes de banques de donn´ees ant´erieurs ne fournissaient qu’un acc`es `a un ensemble plus ou

1 er usage : s’intéresser à tous les tuples de la table maître : left join Formalisme : jointure externe à gauche.. La forme générale d’une jointure externe à gauche est :

Ex 04.. Université 8 Mai 1945-Guelma, Polycopié d’ Algèbre III.. Université 8 Mai 1945-Guelma, Polycopié d’ Algèbre III.. 403]) Soit A une matrice (carrée ou non).. On