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

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

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

MS Access Dotazy SQL

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

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

KIV/ZIS - SELECT, opakování

Databáze SQL SELECT. David Hoksza

Ú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í

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í 6: SQL

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

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

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

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

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

Databázové systémy I

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

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

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

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

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

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

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

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

Operátory ROLLUP a CUBE

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

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

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

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

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

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

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

Databázové systémy a SQL

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

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

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

Databázové systémy a SQL

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

8.2 Používání a tvorba databází

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace.

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

5. blok Souhrnné a skupinové dotazy

Architektury databázových

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

Multi-dimensional expressions

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

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.

SPŠS Č.Budějovice Obor Geodézie a Katastr nemovitostí 3.ročník ATRIBUTY ZÁKLADN POJMY VÝBĚR PRVKŮ DLE ATRIBUTŮ

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

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

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

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

12. blok Pokročilé konstrukce SQL dotazů - část II

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

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Databázové systémy a SQL

Projekt: Inovace oboru Mechatronik pro Zlínský kraj Registrační číslo: CZ.1.07/1.1.08/

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL)

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

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

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

4. blok část A Logické operátory

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

MS Access Dotazy SQL

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

Kapitola 4: SQL. Základní struktura

Ukládání a vyhledávání XML dat

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

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í

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.

Databáze Databázové systémy MS Access

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

1 Tabulky Příklad 7 Access 2010

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

Internetová filmová databáze IFDB

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

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

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

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

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

RELAČNÍ DATABÁZE ACCESS

Kontingenční tabulky v MS Excel 2010

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

Dotaz se souhrny a dotaz křížový

KIV/ZIS - primární klíč

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

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Microsoft. Access. Výběrové dotazy. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

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

Materiál ke cvičením - SQL

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

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

RELAČNÍ DATABÁZOVÉ SYSTÉMY

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

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

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

Transkript:

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

Úvod do SQL (1) SQL (Structured Query Language) je standardizovaný strukturovaný dotazovací jazyk pro práci s databází Veškeré operace v databázi se dají provádět pomocí příkazů SQL V MS Access je možné psát dotazy přímo v SQL místo návrhového zobrazení či průvodce

Úvod do SQL (2) SQL se skládá z částí: DDL (Data Definition Language) Příkazy pro vytváření struktury databáze (vytvoření a úprava tabulek) DML (Data Manipulation Language) Příkazy pro získání (zobrazení) dat z databáze a jejich úpravy (přidání, změna, odebrání záznamu)

Úvod do SQL (3) Příkazy DDL se v MS Access příliš nepoužívají, pro tvorbu tabulek lze bez problémů použít návrhové zobrazení Místo DML příkazů lze využít formuláře nebo datové listy tabulek Některé složitější dotazy je nutno zapsat v SQL, někdo SQL upřednostňuje

DB pro procvičení SQL Budeme pracovat s DB ze cvičení 3 a 4 Stáhnout soubor db5.accdb

SQL v MS Access SQL konzole, do které lze zapisovat SQL dotazy se dá zobrazit v návrhovém zobrazení dotazů Pro každý dotaz vytvořený v návrhovém zobrazení lze zobrazit jeho SQL verzi V návrhovém zobrazení kliknout na lištu návrhového zobrazení pravým tlačítkem a z menu vybrat položku Zobrazení SQL

Příkaz SELECT Nejběžnější dotaz, získává specifikované informace z jedné či více tabulek databáze Syntaxe příkazu: SELECT [DISTINCT ALL] {* [sloupec_vyraz [AS nove_jmeno] [,...]} FROM tabulka [alias] [,...] [WHERE podminka] [GROUP BY seznam_sloupcu] [HAVING podminka] [ORDER BY seznam_sloupcu]

Výpis všech údajů v tabulce Příklad 1 Napište SQL dotaz, který vypíše všechny studenty. SELECT * FROM student; Příklad 2 Napište SQL dotaz, který vypíše všechny semestrální práce Příklad 3 Napište SQL dotaz, který vypíše všechny cvičení

Výběr sloupců z tabulky Příklad 4 Napište dotaz, který vypíše seznam studentů (jméno, příjmení, os. číslo) SELECT jmeno, prijmeni, os_cislo FROM student; Příklad 5 Napište dotaz, který vypíše čísla a názvy semestrálních prací Příklad 6 Napište dotaz, který vypíše pořadí a názvy cvičení

Odstranění nadbytečných řádků Pro odstranění duplicitních řádků použijeme klauzuli DISTINCT Příklad 7 Napište dotaz, který vypíše seznam dnů, ve kterých se učí KIV/ZIS SELECT DISTINCT den FROM rozvrhova_akce; Příklad 8 Napište dotaz, který vypíše seznam počátečních časů cvičení KIV/ZIS

Výběr s odvozeným sloupcem Nemusíme vybírat pouze sloupce tabulky, lze vytvořit nové výpočtem z původních Příklad 9 Vypište studenty společně s rokem jejich narození SELECT jmeno, prijmeni, os_cislo, 2010 - vek AS rok_narozeni FROM student; Příklad 10 Vypište studenty s jejich stipendii po zdanění daní 10 %

Výběr s podmínkou (1) Použije se klauzule WHERE s podmínkou Do výsledku dotazu se zahrnou pouze záznamy splňující podmínku Příklad 11 Vypište všechny studenty starší 21 let SELECT jmeno, prijmeni, os_cislo FROM student WHERE vek >= 21;

Výběr s podmínkou (2) V podmínce můžou být: Standardní operátory >, >=, =, <=, <, <>, AND, OR, NOT Interval BETWEEN cislo1 AND cislo2 Členství ve výčtu IN ( Jana, Petr ) Hledání podobných řetězců LIKE Ja* (%, řetězec začínající Ja libovolné délky), LIKE Jan? (_, řetězec začínající Jan délky 4) Testování nulové hodnoty IS NULL

Výběr s podmínkou (3) Příklad 12 Vypište všechny studenty mezi 21 a 23 lety Příklad 13 Vypište všechny studenty starší 22 let, kteří neberou stipendium Příklad 14 Vypište všechny studenty, jejichž jméno začíná na A Příklad 15 Vypište všechny studenty kteří se jmenují Tomáš, Jana nebo Petr

Řazení (1) K řazení slouží klauzule ORDER BY se seznamem sloupců, podle kterých se řadí Na konec lze přidat klauzule ASC (vzestupné řazení implicitní) nebo DESC (sestupné řazení) Příklad 16 Vypište všechny studenty starší 20ti let seřazené podle věku SELECT * FROM student WHERE vek >= 20 ORDER BY vek;

Řazení (2) Příklad 17 Vypište studenty seřazené podle příjmení, jména a os. čísla Příklad 18 Vypište jméno, příjmení, os. číslo a stipendium studentů seřazených podle velikosti stipendia sestupně Příklad 19 Vypište jméno, příjmení a os. číslo a věk studentů seřazených podle věku sestupně

Agregační funkce (1) COUNT() vrací počet nenulových (Pouze různých od NULL!) hodnot (záznamů) ve specifikovaném sloupci SUM() vrací součet hodnot ve specifikovaném sloupci MIN() vrací minimum MAX() vrací maximum AVG() vrací aritmetický průměr

Agregační funkce (2) Příklad 20 Vypište počet studentů SELECT COUNT(*) FROM student; Příklad 21 Vypište průměrné, maximální a minimální stipendium ze studentů, kteří nějaké pobírají. SELECT AVG(stipendium) AS Prumerne, MIN(stipendium) AS Minimalni, MAX(stipendium) AS Maximalni FROM student WHERE stipendium > 0;

Agregační funkce (3) Příklad 22 Vypište čas prvního cvičení předmětu ZIS v pondělí v sudý týden Příklad 23 Vypište nejnižší, nejvyšší a průměrný věk studentů Příklad 24 Vypište počet témat semestrálních prací Příklad 25 Vypište sumu, kolik musí škola zaplatit studentům na stipendiích

Vnořený příkaz SELECT (1) V některých případech potřebujeme zjistit netriviální informaci, k dokončení jednoduchého příkazu SELECT Použijeme vnořený příkaz SELECT, který tuto informaci zjistí Vnořený SELECT se celý píše do vnějšího (hlavního) SELECT a uzavírá se pro větší přehlednost do závorek

Vnořený příkaz SELECT (2) Příklad 26 Vypište jméno a příjmení nejmladšího studenta SELECT jmeno, prijmeni FROM student WHERE vek = (SELECT min(vek) FROM student) Nelze napsat jen WHERE vek = min(vek) SELECT TOP 1 jmeno, prijmeni FROM student ORDER BY vek Alternativa bez vnořeného dotazu funguje v MS Access, jinde se používá LIMIT

Vnořený příkaz SELECT (3) Příklad 27 Vypište jméno a příjmení studenta s nejvyšším stipendiem