Relační algebra Relační algebra q procedurální jazyk q základní operátory q sjednocení q průnik q rozdíl q kartézský součin q selekce q projekce SJEDNOCENÍ q označení: r È s q def: r È s = {t | t Î r or t Î s} q vytvoří novou tabulku, která obsahuje všechny řádky obou výchozích tabulek. pokud mají tyto tabulky některé řádky shodné, ve výsledné tabulce se objeví pouze jednou SJEDNOCENÍ - PŘÍKLAD SJEDNOCENÍ - PŘÍKLAD PRŮNIK q označení: r Ç s q def: r Ç s = {t | t Î r and t Î s} q vytvoří novou tabulku, která obsahuje pouze totožné řádky z obou relací PRŮNIK - PŘÍKLAD PRŮNIK - PŘÍKLAD ROZDÍL q označení: r - s q def: r - s = {t | t Ì r and t Ë s} q vytvoří novou tabulku,ve které budou všechny řádky vstupní tabulky, ale pouze ty, které se nevyskytují v druhé tabulce ROZDÍL - PŘÍKLAD ROZDÍL - PŘÍKLAD KARTÉZSKÝ SOUČIN q označení: r x s q def: r x s = {tq| t Î r and q Î s} q vytvoří novou tabulku tak, že spojuje řádky z obou tabulek systémem každý s každým - počet sloupců výsledné tabulky je součet počtu sloupců obou vstupních tabulek - počet řádků je součin počtu řádků obou vstupních tabulek KARTÉZSKÝ SOUČIN - PŘÍKLAD KARTÉZSKÝ SOUČIN - PŘÍKLAD SELEKCE q označení: s[p](r) q def: s[p](r) = {t | t Î r and P(t)} q Výběr řádků z relace (tabulky) A do relace (tabulky) B na základě definované podmínky. q Vznikne tabulka se stejným záhlavím jako vstupní tabulka, ale s menším počtem řádků. Řádky se vybírají podle nějakého atributu, jehož hodnoty se porovnávají s jiným srovnatelným atributem nebo s konstantou. q Podmínka je zadána Booleovským výrazem (and, or, not) q Jednoduché podmínky (<,>,=,≤,≥,<>) SELEKCE - PŘÍKLAD SELEKCE - PŘÍKLAD PROJEKCE q označení:P[P1], [P2], …, [Pk] (r) q P1, P2 jsou jména atributů a r je jméno relace q Výběr sloupců z relace (tabulky) A do relace (tabulky) B. Vybrané sloupce jsou dané jmenným seznamem. q Vznikne nová tabulka tak, že z výchozí tabulky se vyberou určené sloupce. V takto vzniklé tabulce se pak zruší všechny duplicitní řádky. PROJEKCE - PŘÍKLAD PROJEKCE - PŘÍKLAD