Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout,...

Preview:

Citation preview

Langage de manipulation de données

Ensemble de commandes permettant :– modifier la base : ajout, modification et suppression– interroger la base

• ex : donner le nom des personnes qui habitent à Paris

Trois grandes classes de LMD relationnels :– Les langages algébriques : – Les langages issus de l’algèbre relationnelle de

Codd :SQL (Structured Query Language)

• ex : select NOM from PERSONNEL where VILLE=‘ PARIS’

– Langages prédicatifs :Systèmes Ingres QUEL (QUEry Language)Access QBE (Query By Example)

Opérateurs d’extraction de donnéesSélection d’un sous ensemble d’attributs :

projectionSélection de n-uplets vérifiant un critère :

sélectionAssociation de plusieurs relations : jointureCombinaison de relations de même schéma :

booléensConstruction de toutes les combinaisons de n-

uplets entre deux relations : produitExtraction des … : division

La projection

La projection d’une relations P1 de schéma R1(A1..An) sur les attributs Ai1,Ai2,…Aip (avec ij ≠ik et p<n) est une relation P2 de schéma R2(Ai1..Aip) dont on a supprimé les tuples en double.

Opérateur d’algèbre relationnelle :µ Ai1..Ain

Symbole graphique :Remarque :

– Filtrages des colonnes– Utilisé pour supprimer les tuples en double (par

exemple après une union)

Exemple de projectionRequête type :

– Quels sont les villes de résidence des personnes de la table P1

VILLE

P2 = µville(P1)

LyonLyonDupontDupont34573457

ParisParisDurandDurand34253425

ParisParisDupondDupond21402140

VILLEVILLENOMNOMIDID

P1

LyonLyon

ParisParis

VILLEVILLE

P2

La restriction ou sélection

La restriction d’une relations P1 de schéma R1 par une qualification Q est une relation P2 de même schéma dont les tuples sont ceux satisfaisant Q.

Opérateur d’algèbre relationnelle : Symbole graphique : Remarque :

– Filtrage des données– Critères Q :

• Égalité entre un attribut et une valeur données VILLE="Paris".• Égalité entre deux attributs de la table VILLE1 = VILLE2.• Inégalité Age<20, Somme>=150.• Différence.

Exemple de sélectionRequête type :

– Sélectionner tous les individus habitant à Paris.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DURAND PARIS3457 PIERRE ORLY

VILLE=‘PARIS’

P2 = VILLE=‘PARIS’(P1)P2

ID NOM VILLE2140 DUPONT PARIS3425 DURAND PARIS

Opérateur booléen UNIONL’union de deux relations P1 et P2 de même

schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1, à P2 ou aux deux.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

2140 DUPONT PARIS3457 PIERRE ORLY4286 DUBOIS NOISY1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

U

P3 = P1 U P2

!Les doublons sont éliminés par définition

Opérateur booléen INTERSECTION

L’intersection de deux relations P1 et P2 de même schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1 et à P2.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

3425 DUPONT CHAMPS

P3 = P1 P2

/

Opérateurs booléen DIFFERENCE

La différence de deux relations P1 et P2 de même schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1 et n’appartenant pas à P2.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

2140DUPONT PARIS3457PIERRE ORLY

P3 = P1 / P2

P1 / P2 P2 / P1!

Recommended