Sunteți pe pagina 1din 3

1 Algebre Relationale

1.1 Scrierea unor expresii in algebra relationale


Problema 1: Sa se gaseasca numele si prenumele studentilor care au o nota de 10.

Rezolvare: Pentru rezolvare o sa facem mai multi pasi cu studentii:


1. In prima faza o sa conbstruim o valoare de selectie a anumitor linii din tabela
note:
σvaloare=10 (note)
2. La pasul doi selectam doar numerele matricole ale acestora (facand o proiectie
a liniilor selectate in pasul anterior):

πnr matr (σvaloare=10 (note))

3. Facem natural Join a acestor numere matricole (obtinute la pasul 2) cu tabela


studenti:
studenti on πnr matr (σvaloare=10 (note))
4. In final, din cauza ca la pasul anterior am obtinut liniile complete ale joinului,
facem o proiectie doar peste campurile nume si prenume:

π(nume,prenume) (studenti o
n πnr matr (σvaloare=10 (note)))

Problema 2: Sa se gaseasca obiectele la care nu s-a pus nici o nota:

Rezolvare: Se va construi tot pas cu pas daca va fi necesar. Prima solutie


este utilizand leftouter a doua este cu right outer:

πtitlu curs (σvaloare=null (Cursuri ./ N ote))

Problema 3: Sa se gaseasca numele tuturor persoanelor ce trec pragul facul-


tatii

Rezolvare: Se va face uniunea intre proiectia peste nume a tabelelor studenti


si profesori:
πnume (studenti) ∪ πnume (prof esori)

Problema 4: Sa se gaseasca numele tuturor persoanelor ce trec pragul facul-


tatii.

1
Rezolvare: Se va face uniunea intre proiectia peste nume a tabelelor studenti
si profesori:
πnume (studenti) ∪ πnume (prof esori)

Alte probleme:
• Aflati numele studentilor care au bursa.
• Aflati numele studentilor care au luat nota 10 la materia BD.

• Aflati numele profesorilor care au pus acelasi prenume cu macar un stu-


dent.
• Aflati cuplurile de studenti care ar putea fi colegi de banca (sunt in acelasi
an si in aceeasi grupa).

Puteti inventa voi si alte probleme daca simtiti ca studentii nu se descurca.

Problema 5: Fie relatiile urmatoare:


C D E
A B C D
1 1 0
0 0 1 1
1 1 1
r: 0 1 1 0 r0 :
0 0 0
1 0 0 1
0 1 1
1 0 1 1
0 1 0
Calculati:
• π(B,C) [r],
• π(C,R) [r0 ] − π(C,R) [r]
• π(A,C) [r] × π(C,D) [r0 ]

n r0 (join natural),
• ro
n r0
• π(A,C) [r] o
• r ./
θ r0 , unde θ = (A = C) ∧ (B < D).

Problema 6: Fie r peste multimea de atribute U si r0 construita peste mul-


timea de atribute U 0 doua relatii. Scrieti o expresie care sa aiba ca valoare o
relatie ce contine acele linii din r ce nu sunt utilizate pentru crearea relatiei
ron r0 .
Raspuns: r − πU (r on r0 )

2
2 Dependente functionale
Problema 1: Fie relatia:
A B C D E
0 0 1 1 1
r: 0 1 1 0 1
1 0 0 1 0
1 0 1 1 0
Sa se gaseasca macar doua dependente functionale satisfacute de relatia r.

Problema 2: Fie Σ = {AB → C, AB → D, CD → E}. Gasiti cel putin doua


dependente functionale ce pot fi obtinute din Σ utilizand sistemul de demon-
stratie R1 .

Problema 3: Demonstrati ca regula de inferenta F D2f din R1 poate fi obt-


inuta din regulile existente in RA .

Problema 4: Demonstrati ca in cadrul R1 regula F D4f poate fi obtinuta


din regulile F D1f − F D3f (ideile de demonstratie se gasesc in slidul 43 de le
curs).

3 Dependente multivaluate
Problema 1: Fie relatia:
A B C D E
1 0 1 7 2
r: 1 0 4 3 5
1 0 1 7 5
1 0 4 3 2
Descoperiti cel putin doua dependente multivaluate in relatia r. Aplicand reg-
ulile de inferenta pentru dependente multivaluate, descoperiti inca doua depen-
dente (multivaluate).

Problema 2: Demonstrati ca, la nivel semantic, are loc proprietatea MVD0


(facut la curs).

Problema 3: Fie multimea de dependente multivaluate Σ = {X  Y, Y 


Z, Z  V }. Aratati ca Σ `RF M X  ((Z − V ) − Y ).

Problema 4: Stiind ca Y ⊆ X si ca Z ⊆ W aratati ca XW  Y Z.

S-ar putea să vă placă și