algebra relationala

Post on 13-Apr-2016

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

dadada

TRANSCRIPT

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.

Pentru a exemplifica operatiile, vom considera urmatoarele scheme relationale:

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

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’

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

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

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

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

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)

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

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

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.

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.

top related