Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Základy RA RA = matematický základ pro relační modul DBS jazyk SQL Relační DBS = Relační algebra + Relační model Doména = množina hodnot stejného typu/významu.

Podobné prezentace


Prezentace na téma: "Základy RA RA = matematický základ pro relační modul DBS jazyk SQL Relační DBS = Relační algebra + Relační model Doména = množina hodnot stejného typu/významu."— Transkript prezentace:

1 Základy RA RA = matematický základ pro relační modul DBS jazyk SQL Relační DBS = Relační algebra + Relační model Doména = množina hodnot stejného typu/významu (např. věk, příjmení); hodnoty v doméně jsou stejného datového typu (čísla, znaky, datum) Atribut = název domény pro použití v relaci; definovaný nad doménou hodnot datového typu Relace = libovolná podmnožina kartézského součinu (trvalá, odvozená, dočasná); představa tabulky, která má v řádcích prvky a ve sloupcích hodnoty jednotlivých atributů. Relaci budeme zapisovat jejím názvem a výčtem atributů.

2 jménopříjmenívěkpohlavípovolání MarekDvořák29mužOSVČ KláraSmutná16ženastudent EduardStarý75muždůchodce FrantišekZakopal42mužzaměstnanec RůženaStraková37ženazaměstnanec KarelHrubec56mužzemědělec Příklad relace OSOBA(JMÉNO, PŘÍJMENÍ, VĚK, POHLAVÍ, POVOLÁNÍ) Jaké má relace atributy? Co je doménou jednotlivých atributů?

3 Projekce, B ⊆ A Projekce je operací volby (výběru); vytváříme novou relaci, která obsahuje pouze některé atributy dané relace, např. jméno a příjmení. Operace, která vytvoří relaci R[B] tak, že z R(A) odřízne sloupce A-B. Zapisujeme ji pomocí [], relace R projekce B => R[B] příjmenívěk Dvořák29 Smutná16 Starý75 Zakopal42 Straková37 Hrubec56 Příklad projekce OSOBA[PŘÍJMENÍ, VĚK]

4 Selekce (restrikce), R(ρ) Selekce vytvoří novou relaci R(ρ) tak, že z relace R ponechá pouze prvky splňující podmínku ρ Označujeme ji relace R(ATRIBUT = hodnota). Podmínky lez spojovat logickými operátory AND a OR. jménopříjmenívěkpohlavípovolání EduardStarý75muždůchodce KarelHrubec56mužzemědělec Příklad selekce OSOBA(VĚK>50)

5 Množinové operace I nad relacemi stejného řádu je to sjednocení ( ∪ ), průnik (∩), rozdíl (-) AB b2 d3 Relace R(A,B) Relace S(A,B) AB a1 d3 e1 b2 Sjednocení ( ∪ ) R ∪ S={t | t ∈ R ∨ t ∈ S} Relace R ∪ S AB a1 d3 e1 AB d3 Průnik ( ∩ ) R ∩ S={t | t ∈ R ∧ t ∈ S} Relace R ∩ S AB a1 e1 Rozdíl (-) R - S={t | t ∈ R ∧ t ∉ S} Relace R-S

6 Množinové operace II nad všemi relacemi Kartézský součin, R×S Množina uspořádaných dvojic [r, s], pro které platí, že prvky r patří do množiny R a zároveň s patří do S (R×S={rs | r ∈ R ∧ s ∈ S}, kde rs=(r 1, r 2,..., r n, s 1, s 2,..., s m )). Spojení, R*S Mějme relace R a S, spojení relací R a S podle Θ na atributu r i relace R a atributu s j relace S budeme označovat: R*S, kde Θ ∈ {, ≠}. Spojení R*S je definováno: R*S ={rs | r ∈ R ∧ s ∈ S ∧ r i Θs j } Jedná se o operaci, která vytvoří maximální relaci U=R*S z relací R(A) a S(B), kde A je množina atributů relace R a B je množina atributů relace S. Atributy relace U pak bude tvořit množina A ∪ B. Pak platí: U[A] ∈ R(A) ∧ U[B] ∈ S(B). Přirozené spojení (R*S) pracuje intuitivně, jedná se přes rovnost atributů stejného názvu a domény. Jinými slovy: Přirozené spojení ze součinu R×S vybere ty záznamy, které mají na stejně pojmenovaných sloupcích stejné hodnoty, přitom stejně pojmenované sloupce se objeví ve výsledném spojení pouze jednou.

7 Příklad ABC a13 c12 a21 CD 2a 2c 1b RS R.AR.BR.CS.CS.D a132a a132c a131b c122a c122c c121b a212a a212c a211b R×SR×S ABCD c12a c12c a21b R*S R.AR.BR.CS.CS.D a132a a212a c122c R*S R.AR.BR.CS.CS.D a132a a132c c122a c122c R*S

8 Hodnoty NULL a tříhodnotová logika ANDTrueFalseNull True FalseNull False Null FalseNull ORTrueFalseNull True FalseTrueFalseNull XORTrueFalseNull TrueFalseTrueNull FalseTrueFalseNull TrueNull Logické operátory AND OR XOR: =TrueFalseNull True FalseNull False TrueNull  TrueFalseNull TrueFalseTrueNull FalseTrueFalseNull OperandIs NullIs NotNull FalseTrue FalseTrue False True NullTrueFalse Speciální operátor IS NULL a IS NOT NULL Srovnání:

9 IDKAUTORNÁZEVSTRANY 1BalzacLesk a bída kurtizán485 2PoláčekMuži v offsidu257 3SienkiewiczQuo vadis386 4DrdaNěmá barikáda125 5ZolaNana49 6BalzacOtec Goriot285 7DrdaDalskabáty, hříšná ves aneb Zapomenutý čert78 8TolstojVojna a mír684 KNIHA(IDK, AUTOR, NÁZEV, STRANY) IDCJMÉNOVĚKADRESA 1Martin45Břeclav 2František25Znojmo 3Jana95Brno 4Ondřej12Znojmo 5Eliška17Hodonín 6Matěj9Brno CTENAR(IDC, JMÉNO, VĚK, ADRESA) CTENARKNIHA VYPUJCKY(CTENAR, KNIHA)

10 Zadání příkladů 1. jména čtenářů starších 25 let 2. id a název knih od Balzaca 3. jména a adresy čtenářů ve věku 17 až 50 let 4. jména autorů, kteří napsali knihu delší než 400 stran 5. id knih, které měl půjčené Martin 6. název a autora knih, které měla půjčené Eliška

11 Zadání příkladů 7. jména a adresy všech čtenářů, kteří mají vypůjčenu nějakou knihu 8. název knih, které neměl nikdy nikdo vypůjčené 9 jména a věk čtenářů, kterým je více než 18 let a nemají nic půjčeno 10. věk a adresu čtenářů, kteří mají knihu < 80 stránek

12 Zadání příkladů 11. jména čtenářů, kteří měli vypůjčenu knihu od Drdy, a k nim název vypůjčené knihy 12. jména a adresy čtenářů, kteří měli půjčenu knihu s více než 400 stranami a nejsou z Břeclavi 13. jména čtenářů a názvy knih, kde počet stran je menší než věk 14. Vytvořte spojení všech relací využitím kartézského součinu


Stáhnout ppt "Základy RA RA = matematický základ pro relační modul DBS jazyk SQL Relační DBS = Relační algebra + Relační model Doména = množina hodnot stejného typu/významu."

Podobné prezentace


Reklamy Google