Antonia Veseli Marija Varga Ivana Šovagović Relacijska algebra Antonia Veseli Marija Varga Ivana Šovagović
Uveo ju je E.F. Codd Skup formalih operacija na relacijama relacijske baze podataka Rezultat algebarskih operacije je relacija Svaki od algebarskih izraza je jedan upit ili pretraživanje
Posebne operacije su: Dijeljenje Selekcija Projekcija Spajanje
Dijeljenje Dijeljenje relacija R i S dobijemo novu relaciju T, tako da je T najveća moguća relacija sa svojstvom da sve n-torke relacije T spojene sa svim n-torkama relacije S daju n-torke sadržane u R R = (A1,A2,...,Ap,Ap+1,...,An) S = (Ap+1,...,An) T = (A1,A2,...,Ap) Oznaka: R[A/B]S ili DIJELJENJE(R,S,A/B)
Selekcija (restrikcija) Selekcija relacije R(A1, A2, ..., An) jest nova relacija T(A1, A2, ..., An) koja se sastoji od n-torki relacije R koje ispunjavaju zadani uvjet Selekcija je unarna operacija kojom se iz relacije izdvaja skup n-toraka koje ispunjavaju zadani (jednostavan ili kompleksan) uvjet Jednostavan uvjet opisuje se formom: <atribut> <operator> <vrijednost> operator = {=, , <, >} U kompleksnim uvjetima koriste se i logički operatori {AND, OR, NOT} ({I, ILI, NE}) kojima se povezuju jednostavni uvjeti Oznaka: ơuvjet(R) ili SELEKCIJA(R,uvjet)
Projekcija Projekcija relacije R nova je relacija T koja se sastoji od atributa relacije R po kojima je obavljena operacija projekcije, i u kojoj su uklonjene jednake n-torke Projekcija je unarna operacija kojom se iz relacije izdvajaju pojedini stupci (po kojima se obavlja projiciranje) Ako je X podskup atributa relacije R, projekcija relacije R po X se dobiva uklanjanjem atributa R-X i uklanjanjem višestrukih n-torki Oznaka: πAi,Aj,...,Am(R) ili PROJEKCIJA(R,Ai,Aj,...,Am)
Spajanje Theta-spoj je selekcija Kartezijevog produkta relacija R i S opisana je formulom: A<operator>B gdje je A atribut relacije R, a B atribut relacije S Oznaka: R[uvjet]S ili SPOJ(R,S,uvjet)
Spajanje na jednakost Ako se kao theta-operator koristi = spajanje na jednakost Spajanje daje za rezultat relaciju u kojoj dva stupca (atributa) imaju iste vrijednosti – To su stupci po kojima se obavlja spajanje – Ako se pritom izbaci jedan nepotreban stupac, dobiva se prirodno spajanje
Prirodni spoj relacija R(A1, A2, ..., An, X) i S(X, B1, B2, ...,Bm), sa zajedničkim skupom atributa X, jest nova relacija T(A1, A2, ..., An, X, B1, B2, ..., Bm) koja se sastoji od n-torki relacije R spojenih s n-torkama relacije S kojeimaju istu X-vrijednost Oznaka: R[A*B]S ili SPOJ(R,S,A*B) gdje su R.A i S.B atributi po kojima se obavlja spajanje
Vanjski spoj Operacija vanjskog spoja relacija R i S jest nova relacija T koja je jednaka operaciji spoja relacija R i S, uz dodatak n-toraka relacija R i S koje nisu sadržane u spoju (popunjene su nulvrijednostima na mjestima nedostajućih atributa) vanjsko spajanje na jednakost R[A/=\B]S ili SPOJ(R,S,A/=\B)
Tradicionalne operacije su: Unija Razlika Presjek Kartezijev produkt
Dvije relacijske sheme su međusobno unijski kompatibilne: Unijska kompatibilnost – usporedivost dviju relacija, koje dozvoljavaju izvođenje operacija unije, presjeka ili razlike Dvije relacijske sheme su međusobno unijski kompatibilne: ako imaju isti stupanj ako između dva skupa postoji preslikavanje 1:1 kojim se svaki atribut jedne relacijske sheme preslikava na unijski kompatibilan atribut druge
Unija Unija dviju unijski kompatibilnih relacija R(A1, A2, ..., An) i S(A1, A2, ..., An) je nova relacija T(A1, A2, ..., An) koja se sastoji od svih n-toraka sadržanih u R i S Unija relacija R i S označava se R S ili UNIJA(R,S) Svojstva: asocijativnost, komutativnost
Razlika Razlika (diferencija) dviju unijski kompatibilnih relacija R(A1, A2, ..., An) i S(A1, A2, ..., An) jest nova relacija T(A1, A2, ..., An) koja obuhvaća sve n-torke relacije R koje istovremeno nisu sadržane u relaciji S Razlika R i S se označava R\S ili RAZLIKA(R,S) Svojstva: nije komutativna, ni asocijativna
Presjek Presjek dviju unijski kompatibilnih relacija R(A1, A2, ..., An) i S (A1, A2, ..., An) je nova relacija T(A1, A2, ..., An) koja obuhvaća sve n-torke što se istovremeno nalaze u relaciji R i u relaciji S Presjek relacija R i S označava se RS ili PRESJEK(R,S)
Kartezijev produkt Kartezijev produkt dviju relacija R(A1, A2, ..., An) i S(B1,B2, ..., Bm) nova je relacija T(A1, A2, ..., An, B1, B2, ...,Bm) koja se sastoji od n-torki nastalih spajanjem svake n-torke relacije R sa svakom n-torkom relacije S Kartezijev produkt relacija R i S označava se R×S ili PRODUKT(R,S) Svojstva: asocijativnost, komutativnost
Grafički prikaz operacija relacijske algebre Vrlo jasan grafički prikaz operacija relacijske algebre Iznimke: kartezijev produkt i oba pridruživanja Grafički prikaz izrađen prema Dateu Umjesto krugova, koriste se pravokutnici
Literatura: