Professional Documents
Culture Documents
Kapitulli6 DB
Kapitulli6 DB
ALGJEBRA RELACIONALE
OBJEKTIVAT
Algjebra Relacionale
Rezultati i nje retrieval eshte nje relacion i ri, i cili mund te jete
formuar nga nje ose me teper relacione. Veprimet e
algjebres ne kete menyre krijojne relacione te reja, te cilat me
pas mund te perpunohen duke perdorur veprime te te njejtes
algjeber.
Veprimi SELECT
Veprimi SELECT perdoret per te zgjedhur nje
nenbashkesi tuples nga nje relacion qe
ploteson nje kusht perzgjedhjeje (a
selection condition). Ai eshte nje filter qe
mban vetem ato tuples qe plotesojne nje
kusht kualifikues (a qualifying condition )
ato qe plotesojne kushtin perzgjidhen ndersa
te tjeret nuk merren parasysh.
5
Veprimi PROJECT
Ky veprim perzgjedh disa kolona nga
tabela duke lene menjane te tjerat.
PROJECT krijon nje ndarje vertikale
nje me kolonat (atributet) qe
permbajne rezultatet e veprimit dhe
tjetra qe permban Kolonat e
panevojshme.
10
13
14
Veprimi RENAME
Ne mund te duam te zbatojme disa veprime
te algjebres relacionale njeri pas tjetrit. Ose
mund te shkruajme veprimet si nje shprehje
e vetme e algjebres relacionale duke I
vendosur veprimet njeri brenda tjetrit, ose
mund te zbatome nje veprim nje here dhe te
krijojme relacione te rezultatit te
ndermjetem. Me pas, ne mund tI
emertojme relacionet qe mbajne rezultatet e
ndermjetme.
15
17
(b)
18
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
Type Compatibility
Relacionet operande R1(A1, A2, ..., An) dhe
R2(B1, B2, ..., Bn) duhet te kene te njejtin
numer atributesh, dhe domain-et e atributeve
korresponduese duhet te jene compatible;
pra, dom(Ai)=dom(Bi) for i=1, 2, ..., n.
Relacioni rezultat per R1 U R2,R1 R2, or
R1-R2 ka te njejtat emra te atributeve si edhe
relacioni I pare operand R1 (me
marreveshje).
20
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
Shembull UNION
21
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
VEPRIMI I NDERPRERJES
Rezultati I ketij veprimi, I paraqitur nga R S, eshte nje relacion qe
perfshin te gjithe tuples qe jane njekohesisht edhe ne R edhe ne S. Te
dy operandet duhet te jene "type compatible.
Shembull: Rezultati I veprimit te nderprerjes (figura me poshte)
perfshin vetem ato qe jane njekohesisht punonjes dhe manaxhere.
22
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
23
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
Veprimet e Algjebres
Relacionale nga Teoria e
Bashkesive
25
26
Veprimi JOIN
Sekuenca e prodhimit kartezian e ndjekur nga select
perdoret shpesh per te identifikuar dhe zgjedhur tuples
e lidhur prej dy relacioneve, nje veprim special, I
quajtur JOIN. Ai paraqitet nga simboli
Ky veprim eshte shume I rendesishem per cdo
databaze relacionale me me teper se nje relacion, sepse
na lejon te krijojme relacione midis relacioneve.
Forma e pergjithshme e nje veprimi join ne dy
relacione R(A1, A2,. . ., An) dhe S(B1, B2, . . ., Bm) eshte:
R
<join condition> S ku R dhe S mund te jene cdo relacion
qe rezulton nga relational algebra expressions.
27
28
Veprimi EQUIJOIN
Perdorimi me I zakonshem I join perfshin kushte per join vetem me
krahasimet e barazise. Nje join I tille, ku I vetmi operator krahasues I
perdorur eshte =, quhet nje EQUIJOIN. Ne rezultatin e nje EQUIJOIN
ne gjithmone kemi nje ose me teper cifte atributesh (emrat e te cileve
nuk eshte te thene te jene identike) qe kane vlera identike ne cdo
tuple. JOIN I pare ne shembullin e meparshem ishte nje EQUIJOIN.
Veprimi NATURAL JOIN
Per aresye se nje nga atributet e cdo cifti me vlera identike eshte I
tepert, nje veprim I ri I quajtur natural joinI paraqitur nga * eshte
krijuar per te hequr atributin e dyte (te tepert) ne nje kusht
EQUIIJOIN.
Percaktimi standart I natural join kerkon qe te dy atributet e lidhjes
(join), ose cdo cift I atributeve korresponduese join, te kene te njejtin
emer ne te dy relacionet. Nese nuk ndodh keshtu, atehere se pari
duhet te zbatohet nje veprim renaming.
29
30
Bashkesia e Plote e
Veprimeve Relacionale
Veprimet Relacionale
Binare
33
34
35
36
(b)
R(DNO, NR_PUNONJESVE,
PAGA_MESATARE) DNO
AVERAGE PAGA (PUNONJESI)
COUNT ID,
(PUNONJESI)
37
38
39
41
42
43
44
Njehsimet Relacionale
46
47
Percaktuesit (Quantifiers)
Existential dhe Universal
48
Perdorur Existential
Quantifier
49
Gjuha SQL bazohet ne tuple calculus. Ajo perdor kryesisht strukturat bllok
SELECT <list of attributes>
FROM <list of relations>
WHERE <conditions>
per te shprehur queries ne tuple calculus ku fjala SELECT nenkupton atributet
qe do te projektohen, fjala FROM nenkupton relacionet e nevojshme ne query,
dhe fjala WHERE nenkupton selection po aq sa edhe kusht join.
Nje gjuhe tjeter e bazuar ne tuple calculus eshte QUEL e cila aktualisht perdor
range variables si ne tuple calculus.
Sintaksa e saj perfshin:
RANGE OF <variable name> IS <relation name>
Me pas perdor
RETRIEVE <list of attributes from range variables>
WHERE <conditions>
50
52