Databázové systémy 1 Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice
Obsah cvičení -Indexy a sekvence -Opakování ze cvičení 7 -Skupinové dotazy -Vnořené dotazy -Vnější spojení -Funkce pro práci s řetězci Databázové systémy 1 – cvičení 8 2
A_O_SNEHURCE Databázové systémy 1 – cvičení 8 3
Cvičení 7 – Příklady 1.Vyberte jednoho trpaslíka, který v rámci libovolné šachty vytěžil nejvíce rudy a vytvořte „jeho“ ovou adresu. Adresa bude mít následující tvar: jmeno_id_trpaslika- – Jmeno - všechna písmena malá. – Ročník_narození - formát YY. – Sachta - název šachty, kde trpaslík vytěžil nejvíce. Malými písmeny. Mezery nahrazeny podtržítkem. – Příklad u: 2.Pro každou kombinaci trpaslík x šachta vypočtěte plnění plánu (skutečnost/plán v procentech). Zároveň údaj o plnění plánu zobrazte i graficky. A to tak že za každých 10% zobrazíte v grafu jednu hvězdičku (*). Celý graf začne znakem |. Př.: 86% = |******** 3.Vypočtěte trpaslíkův plat za těžby v únoru Za každou celou odpracovanou hodinu v každé směně obdrží trpaslík 8,62 dukátu. Za každou směnu, kdy trpaslík nesplnil plán, bude penalizován 20 dukáty. Ve výsledku zobrazte plat, penále, vypočtěte hrubou mzdu jako plat po odečtení penále a čistou mzdu, když víte, že hrubá mzda se daní 12%. Databázové systémy 1 – cvičení 8 4
5 Cvičení 8 – Příklady 1.Za 6. týden roku 2012 vytvořte docházkový list pro jednotlivé trpaslíky a šachty. List bude obsahovat jméno trpaslíka, název šachty a grafické zobrazení dané docházky. Viz příklad: 1.Za období až nalezněte pro každého trpaslíka rudu, které v daném období vytěžil nejvíce. Příklad vyřešte nejdříve s vytvořením pomocného pohledu. Poté za použití vnořených dotazů.
Cvičení 8 - pohledy Databázové systémy 1 – cvičení Vytvořte pohled cv8_plneni_planu(plneni). Pohled zobrazí v procentech, na kolika těžbách se podařilo dodržet stanovený plán. Uvažujte všechny realizované těžby. Plán považujte za splněný i v případě, kdy nebyl stanoven. Výsledek zaokrouhlete na dvě desetinná místa. Výstupní formát: „57,24 %“. 2.Vytvořte pohled cv8_ruda_podprumer(ruda,rozdil). Pohled zobrazí rudu, jejíž skutečná těžba procentuálně nejméně naplňuje plán. Ve sloupci se rozdil se zobrazí rozdíl v procentech oproti průměrnému plánu ve všech čachtách za všechny těžby). Rozdíl bude zaokrouhlen na celá čísla. Formát: „7 %“. 3.Vytvořte pohled cv8_vikendove_tezby(jmeno,natezeno). Přehled zobrazí souhrn všech těžeb za jednotlivé trpaslíky o víkendech (sobota, neděle). Pozor! Ve výpise se musí objevit všichni trpaslíci. Pokud o víkendu daný trpaslík netěžil, objeví se u něj ve sloupci natezeno „0,00 kg“. Natezeno zaokrouhlete na dvě desetinná místa.
Databázové systémy 1 – cvičení 8 7 Cvičení 8 - pohledy 1.Vytvořte pohled cv8_nejtezenejsi_pondeli(ruda). Pohled zobrazí rudu, které se v rámci pondělních těžeb vytěží nejvíce. Uvažujte všechny pondělní těžby. 2.Vytvořte pohled cv8_unor_odpracovano(jmeno, sachta, odpracovano_graf, skutecnost_graf). Pohled bude obsahovat přehled za jednotlivé trpaslíka a šachty, na které v měsíci únoru (v roce 2012) docházeli. Ve sloupci odpracovano_graf se za každých osm odpracovaných hodin v celém měsíci objeví jedna *. Ve sloupci skutecnost_graf se za každých 25 kg rudy objeví jedno +. Oba grafy budou začínat znakem „|“. Viz příklad:
Cvičení 8 – Zásady vypracování Všechny příklady budou vypracovány nad schématem A_O_SNEHURCE. Všechny databázové objekty z tohoto cvičení vytvořte se svém schématu. Pro splnění cvičení je nutné, aby všechny objekty byly správně vytvořeny a funkční do půlnoci dne před následujícím cvičením. Databázové systémy 1 – cvičení 8 8