algebra relationala

13
ALGEBRA RELATIONALA

Upload: alex-radulescu

Post on 13-Apr-2016

212 views

Category:

Documents


0 download

DESCRIPTION

dadada

TRANSCRIPT

Page 1: Algebra Relationala

ALGEBRA RELATIONALA

Page 2: Algebra Relationala

Odata memorate datele, apar doua probleme: Problema regasirii informatiei (interogare) Problema actualizarii informatiilor prin

inserare/adaugare, modificare, stergerePentru modelul relational, cea

mai potrivita modalitate teoretica de abordare a acestor operatii o constituie algebra relationala.

Set de operatii aplicate asupra uneia sau a doua relatii initiale si care au ca rezultat o alta relatie = algebra relationala.

Page 3: Algebra Relationala

Pentru a exemplifica operatiile, vom considera urmatoarele scheme relationale:

Clasa(codclasa, sala, diriginte) Elev(nume, medie, nrabs, codclasa) Profesor(nume, grad, datan, disciplina)

Page 4: Algebra Relationala

1. Selectia Se aplica asupra unei singure relatii si

are ca rezultat o noua relatie, cu aceeasi schema relationala, si ale carei inregistrari constituie o submultime a relatiei initiale.

Forma generala:Select R where <conditie>

Ex: select elev where codclasa=’12A’ select profesor where nume=‘Ionescu’

Page 5: Algebra Relationala

2. Proiectia Se aplica asupra unei relatii si are ca

rezultat o noua relatie, cu mai putine atribute.

Forma generala:project R on <lista atribute>

Ex: project clasa on codclasa,diriginte project profesor on disciplina

Page 6: Algebra Relationala

3. Produsul cartezian Se aplica asupra a doua relatii initiale si

are ca rezultat relatia corespunzatoare produsului cartezian(schema relationala a rezultatului reprezinta reuniunea celor doua scheme initiale, iar drept inregistrari are toate combinatiile dintre orice doua inregistrari ale relatiilor initiale).

Forma generala:R1 product R2

ex: clasa product elev

Page 7: Algebra Relationala

4. Reuniunea Se aplica asupra a doua relatii avand

aceeasi schema relationala si se obtine o relatie ce va contine reuniunea multimilor de inregistrari ale relatiilor initiale.

Forma generala:R1 union R2

Ex: elevg union elevl

Page 8: Algebra Relationala

5. Diferenta Se aplica asupra a doua relatii cu

aceeasi schema relationala si are ca rezultat relatia care contine diferenta multimilor de inregistrari ale relatiilor initiale.

Forma generala:R1 minus R2

Page 9: Algebra Relationala

6. Intersectia Se aplica asupra a doua relatii cu

aceeasi schema relationala si rezulta o relatie ce va contine intersectia inregistrarilor.

Forma generala:R1 intersect R2

R1 intersect R2 = ((R1 union R2) minus (R1 minus R2)) minus (R2 minus R1)

Page 10: Algebra Relationala

7. Jonctiunea Se aplica asupra a doua relatii care au, fiecare,

cel putin un camp definit peste acelasi domeniu. Noua relatie va avea drept atribute reuniunea atributelor celor doua relatii, iar ca inregistrari va avea acele inregistrari care se pot forma din orice doua inregistrari initiale pentru care valorile din campurile de legatura sunt egale.

Forma generala:join R1 and R2 where

R1.<atribut>=R2.<atribut>

ex: join clasa and elev where clasa.codclasa=elev.codclasa

Page 11: Algebra Relationala

8. Diviziunea Operatie oarecum inversa produsului

cartezian. Pentru o relatie mai mare R1 si o a doua

relatie R2, formata doar cu o parte din atributele primei relatii, aplicand diviziunea vom obtine acele inregistrari din prima relatie care ‘relationeaza’ cu toate inregistrarile din relatia a doua.

Forma generala:R1 divide R2

Page 12: Algebra Relationala

Aplicatii ale algebrei relationale O interogare se efectueaza prin

combinarea operatiilor de selectie, proiectie si jonctiune.

Adaugarea unei inregistrari se realizeaza prin reuniune.

Stergerea unei inregistrari se realizeaza prin diferenta.

Modificarea unei inregistrari se realizeaza prin stergere si adaugare.

Page 13: Algebra Relationala

Exemple Care este numele dirigintelui clasei x? In ce sala invata clasa 12A? Care sunt elevii clasei x cu media peste

7.50? Care este data nasterii dirigintelui

elevului x? Sa se adauge elevul Popescu, la clasa

11B stiind ca are media 9.00 si 2 absente.

Sa se stearga elevul Ion din clasa 11D stiind ca are media 10 si 0 absente.