KIV/ZIS - SELECT, opakování

Podobné dokumenty
KIV/ZIS - SQL dotazy. stáhnout soubor ZIS- 04_TestovaciDatabaze accdb. SQL dotazy. budeme probírat pouze SELECT

MS Access Dotazy SQL

KIV/ZIS cvičení 5. Tomáš Potužák

KIV/ZIS cvičení 6. Tomáš Potužák

Úvod do databázových systémů

Úvod do databázových systémů 3. cvičení

Informační systémy ve zdravotnictví. 10. cvičení

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

Databázové systémy. Cvičení 6: SQL

Architektury databázových

Databáze SQL SELECT. David Hoksza

KIV/ZIS - cvičení 1/39

KIV/ZIS - semestrální práce

Databázové systémy a SQL

Databázové systémy Cvičení 5.3

SQL SQL-SELECT. Informační a znalostní systémy. Informační a znalostní systémy SQL- SELECT

Databázové systémy I

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

KIV/ZIS - cvičení. je dobré chodit na cvičení, lépe se pak vypracovávají semestrálky. první 2 týdny podle kapacity 1/37

XMW4 / IW4 Pokročilé SELECT dotazy. Štefan Pataky

Co bude výsledkem mého SELECTu? RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT

téma: Výběrové dotazy v MS Access

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky

6. blok část B Vnořené dotazy

Základní přehled SQL příkazů

5. blok Souhrnné a skupinové dotazy

Operátory ROLLUP a CUBE

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Informační systémy ve zdravotnictví. 6. cvičení

Databázové systémy Cvičení 5

Úvod do databázových systémů

Distanční opora předmětu: Databázové systémy Tématický blok č. 1: Dotazovací jazyk SQL Autor: RNDr. Jan Lánský, Ph.D.

Dotazy tvorba nových polí (vypočítané pole)

Jazyk SQL 2. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c M.Valenta, 2011 BI-DBS, ZS 2011/12

Access. Tabulky. Vytvoření tabulky

Dotaz se souhrny a dotaz křížový

Databázové systémy. Dotazovací jazyk SQL - II

6. blok část C Množinové operátory

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav

Sada 1 - PHP. 15. Výběr dat z databáze. Příkaz SELECT

Řešené příklady STUDENT(RČ, JMÉNO, SPECIALIZACE) PŘEDMĚT(KÓD, NÁZEV, SYLLABUS, GARANT) ZÁPIS(RČ, KÓD, SEMESTR, ZNÁMKA)

Materiál ke cvičením - SQL

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MySQL základní pojmy, motivace Ing. Kotásek Jaroslav

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Tiskové sestavy. Zdroj záznamu pro tiskovou sestavu. Průvodce sestavou. Použití databází

Osnova je orientační pro FIT, u FEKTu se dá předpokládat, že budou zohledněny předchozí znalosti studentů, kde většina s databází nikdy přímo

Databázové systémy Tomáš Skopal

INFORMATIKA EXCEL 2007

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

Databáze 2011/2012 SQL SELECT II. RNDr.David Hoksza, Ph.D.

DB1 cvičení 4 spojení tabulek a složitější dotazy

Databáze I. Přednáška 6

KIV/ZIS cvičení 2. Martin Kryl

Databázové systémy a SQL

Vzorové příklady SQL. Tabulka: Kniha CREATE TABLE kniha (id INTEGER, název VARCHAR(50), PRIMARY KEY (id))

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

- sloupcové integritní omezení

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

Kontingenční tabulky v MS Excel 2010

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Efektivní práce s Excelem (středně pokročilí uživatelé)

Jazyk S Q L základy, příkazy pro práci s daty

KONTINGENČNÍ TABULKY CO TO JE

KIV/ZIS - primární klíč

Úvod do databázových systémů

Úvod do databázových systémů

Instalace. Produkt je odzkoušen pro MS SQL server 2008 a Windows XP a Windows 7. Pro jiné verze SQL server a Windows nebyl testován.

KIV/ZIS cvičení 1. Martin Kryl

KIV/ZIS - primární klíč

MS Access Dotazy SQL

PG 9.5 novinky ve vývoji aplikací

DJ2 rekurze v SQL. slajdy k přednášce NDBI001. Jaroslav Pokorný

Access Tabulka letní semestr 2013

Návrh a tvorba WWW stránek 1/14. PHP a databáze

DATA CUBE. Mgr. Jiří Helmich

PROCESOR RELAČNÍ ALGEBRY

Informační systémy ve zdravotnictví. 8. cvičení

Internetová filmová databáze IFDB

Dotazování v relačním modelu a SQL

Dotazovací jazyky I. Datová krychle. Soběslav Benda

Databáze I. 2. přednáška. Helena Palovská

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

Materializované pohledy

Microsoft Access. Typy objektů databáze: Vytvoření a návrh nové tabulky. Vytvoření tabulky v návrhovém zobrazení

Jazyk SQL databáze SQLite. připravil ing. petr polách

Jazyk SQL 1. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12

Kapitola 4: SQL. Základní struktura

PRACUJEME S TSRM. Modul Samoobsluha

KIV/ZI Základy informatiky MS EXCEL DATABÁZOVÉ FUNKCE

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Úvod do SQL v systému SAS Martin Branda

Příručka uživatele HELPDESK GEOVAP

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MS Access propojení relací s formuláři a sestavami Ing.

U koly na procvic ení jazyka T-SQL

Transkript:

KIV/ZIS - SELECT, opakování soubor 4_databaze.accdb (lze použít ten z minula) http://home.zcu.cz/~krauz/zis/4_databaze.accdb minule: SELECT FROM WHERE ORDER BY SELECT sloupce jaké sloupce chceme vybrat FROM tabulka z jaké tabulky WHERE podmínka filtrování podle podmínky ORDER BY sloupce řazení podle nějakých sloupců

KIV/ZIS - agregace (souhrny) SELECT... GROUP BY sloupce ; seskupení výsledků podle zadaných sloupců tj. vrací vždy jeden řádek pro všechny výsledky se stejnou hodnotou v zadaném sloupci agregační funkce: COUNT, SUM, AVG, MIN, MAX SELECT Oddeleni, COUNT(*), MIN(Plat) FROM Zamestnanci WHERE Plat >= 20000 GROUP BY Oddeleni;

KIV/ZIS - agregace bez GROUP agregační funkce lze použít i bez GROUP BY provede se nad celou tabulkou vrací pouze jeden řádek SELECT COUNT(*) FROM Zamestnanci; počet zaměstnanců v celé firmě/tabulce SELECT AVG(Plat) FROM Zamestnanci; průměrný plat v celé firmě/tabulce SELECT SUM(PorizovaciCena) FROM Zarizeni;

KIV/ZIS - úkoly dotaz 11: Zjistěte nejnižší a nejvyšší plat v jednotlivých odděleních. dotaz 12: Kolik zařízení mají ve správě jednotliví zaměstnanci? dotaz 13: Vypište telefonní linky, včetně počtu lidí, kteří je sdílí a) v rámci celé firmy b) v rámci oddělení 2

KIV/ZIS - agregace, filtrování agregační funkci nelze vložit do filtru WHERE SELECT GROUP BY sloupce HAVING podmínka ; podmínka za HAVING může obsahovat agregační funkci SELECT Oddeleni FROM Zamestnanci GROUP BY Oddeleni HAVING COUNT(*) > 2;

KIV/ZIS - úkoly dotaz 14: Vypište čísla oddělení, jejichž zaměstnanci nemají nižší plat než 20 000 Kč. dotaz 15: Která čísla oddělení mají více jak 5 zaměstnanců bez telefonu?

KIV/ZIS - dotaz s parametrem stejně jako v návrhovém zobrazení vložit do dotazu místo pevné hodnoty parametr v hranatých závorkách a s dvojtečkou SELECT * FROM Zamestnanci WHERE Plat > [Plat větší než:]; dotaz 16: Vypište zaměstnance z oddělení zadaného parametrem.

KIV/ZIS - DISTINCT SELECT DISTINCT... klíčové slovo DISTINCT zajistí, že ve výsledku nebudou duplicitní řádky např. chceme názvy zařízení: SELECT nazev FROM Zarizeni; některé názvy se budou opakovat SELECT DISTINCT nazev FROM Zarizeni; každý název pouze jednou

KIV/ZIS - výpočty v dotazu, AS SELECT sloupec AS novynazev ; přejmenuje sloupec na novynazev (pouze ve výsledku dotazu!) SELECT Plat/1000 AS plat_tisice FROM Zamestnanci; výpočet nového sloupce a pojmenování jako plat_tisice SELECT * FROM Zamestnanci WHERE Plat/1000 >= 20; výpočty můžou být i v podmínce

KIV/ZIS - dotaz nad více tabulkami v zásadě stejné jako dosud s rozdíly: za klíčové slovo FROM se přidá více tabulek (oddělené čárkou) musí se přidat podmínka rovnosti primárního a cizího klíče!! jinak vznikne kartézský součin (každý s každým) pokud mají vybrané sloupečky z tabulek shodné názvy, přidá se k nim, z jaké jsou tabulky (tabulka.sloupec) SELECT * FROM Zamestnanci, OddeleniFirmy WHERE Zamestnanci.Oddeleni = OddeleniFirmy.CisloOddeleni ; vazba cizí-primární

KIV/ZIS - dotaz nad více tabulkami SELECT * FROM Zamestnanci, OddeleniFirmy WHERE Zamestnanci.Oddeleni = OddeleniFirmy.CisloOddeleni AND OddeleniFirmy.NazevOddeleni LIKE "Mont*"; názvy sloupců se neshodují, stačí zapsat: SELECT * FROM Zamestnanci, OddeleniFirmy WHERE Oddeleni = CisloOddeleni AND NazevOddeleni LIKE "Mont*";

KIV/ZIS - úkoly dotaz 17: Uveďte jmenovitě správce tiskáren. dotaz 18: Jaká je pořizovací cena jednotlivých zařízení, která spravuje Magdaléna Hrušková? dotaz 19: Vypište názvy oddělení, na kterých mají konvici nebo stůl.

KIV/ZIS - JOIN SELECT FROM JOIN ON ; jiná možnost, jak propojit více tabulek: tabulka1 JOIN tabulka2 ON tabulka1.primklic = tabulka2.ciziklic propojení klíčů se pak už neprovádí ve WHERE SELECT * FROM Zamestnanci JOIN OddeleniFirmy ON Zamestnanci.Oddeleni = OddeleniFirmy.CisloOddeleni ; lze dále použít WHERE pro filtrování: SELECT * FROM Zamestnanci JOIN OddeleniFirmy ON Zamestnanci.Oddeleni = OddeleniFirmy.CisloOddeleni WHERE OddeleniFirmy.Nazev = "Příjem" ;

KIV/ZIS - JOIN JOIN se dělí na 3 typy: INNER JOIN zahrnuje jen takové řádky, které mají odpovídající záznam v obou tabulkách LEFT JOIN ve výsledku jsou všechny řádky z levé tabulky, i když nemají odpovídající záznam v pravé tabulce RIGHT JOIN ve výsledku jsou všechny řádky z pravé tabulky, i když nemají odpovídající záznam v levé tabulce pokud se uvede pouze JOIN, použije se INNER JOIN

KIV/ZIS - úkoly v následujících dotazech propojte tabulky pomocí JOIN dotaz 20: Uveďte jmenovitě správce tiskáren. dotaz 21: Jaká je pořizovací cena jednotlivých zařízení, která spravuje Magdaléna Hrušková? dotaz 22: Vypište názvy oddělení, na kterých mají konvici nebo stůl.

KIV/ZIS - vnořený SELECT používá se např. pokud potřebujem nejdřív zjistit nějakou informaci, kterou následně chceme použít v podmínce SELECT * FROM Zamestnanci WHERE Plat = (SELECT min(plat) FROM Zamestnanci) ; vypíše informace o zaměstnancích s nejnižším platem nelze napsat jen WHERE Plat = min(plat)

KIV/ZIS - prezentace semestrálních prací 10. 5. 2016 (poslední cvičení) max. 5 minut 4-6 slajdů párkrát si to doma vyzkoušejte s hodinkami zaměřte se opravdu jen na nejdůležitější informace obsah viz. info na Courseware jasně, stručně, hlasitě krom nativní prezentace i v PDF přinést na flešce

KIV/ZIS Děkuji za pozornost.