AGREGACE Distinct, Group By, Having, SUM, …. DISTINCT  Slučování stejných řádků ve výsledku dotazu. AGREGACE 2 JménoPříjmeníID FrantišekVomáčka1 JosefPokorný2.

Slides:



Advertisements
Podobné prezentace
Aplikační a programové vybavení
Advertisements

KIV/ZIS Cvičení 6 SQL - SELECT.
SQL Další dotazy a pohledy
Cvičení 05 Joins, isNull, case when Ing. Pavel Bednář
Cvičení 06 Ing. Pavel Bednář
Základy jazyka SQL Jan Tichava
Aplikační a programové vybavení
Jazyk SQL Ing. Zdena DOBEŠOVÁ. SQL Structured Query Language 1974 SEQUEL (Structured English Query Language) neprocedurální relační dotazovací jazyk norma.
Databázové systémy SQL Výběr dat.
YDASYS1 Ing. Monika Šimková.
Fakulta elektrotechniky a informatiky
Cvičení 03 SQL Select Ing. Pavel Bednář
Informační systémy Nástroje pro sběr dat, návrh a realizace databáze.
Databázové systémy SQL Agregace a funkce.
SQL Structured Query Language
Další dotazy SQL Structured Query Language. Některé SQL příkazy mohou mít v sobě obsaženy další kompletní příkazy SELECT. Využijeme je tam, kde potřebujeme.
SQL Structured Query Language
Informatika pro ekonomy II přednáška 11
Databázové systémy I Přednáška č. 5 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 1 Cvičení č. 3 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Temporální databáze a TSQL
Dotazovací jazyk pro setříděná data Tereza Cihelková, Matěj Klonfar.
Co takhle DOTAZY? OBSAH: Y 1) Co jsou to dotazy ve WinBase Y 2) Vytvoření jednoduchého dotazu Y 3) Použití dotazu.
SQL Přednáška DB1. Literatura CONNOLLY, T.M.-BEGG,C.E.-STRACHAN,A.D.: Database Systems – A Practial Approach to Design, Implementation and Management.
Databázové systémy II Přednáška č. 8 – Pohledy (Views)
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Databázové systémy II Přednáška č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Fakulta elektrotechniky a informatiky
Databázové systémy I Cvičení č. 9 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
KIV/ZIS cvičení 6 Tomáš Potužák. Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Stáhnout soubor studenti_dotazy_sql.mdb.
Databázové systémy I Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
MS ACCESS DOTAZY.
Databázové systémy Přednáška č. 6.
SQL – základní pojmy Ing. Roman Danel, Ph.D.
SQL PVA Jan Hora. SQL „graficky“ Grafický vs. pravý SQL SELECT ORDED BY WHERE.
Rauer Luboš Kopic Petr Blažek Tomáš. Structured Query Language - dotazovací jazyk -> pracuje s dotazy - neprocedurální jazyk - mocný, ale přitom jednoduchý.
Fakulta elektrotechniky a informatiky
ACCESS DOTAZY Ing. Jana Horáková IKT MS Office
Databázové systémy Tomáš Skopal
Databázové systémy I Cvičení č. 7 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Informatika II PAA DOTAZOVACÍ JAZYKY
Aplikační a programové vybavení
Databáze velké množství dat pevně dané struktury
Databázové systémy SQL Výběr dat.
Průměr Maximum Minimum
 Agregační funkce  Agregační funkce jsou to funkce, které nějakým způsobem zpracují více hodnot a jako výsledek vrátí hodnotu jednu COUNT()  Funkce.
Použití dotazu jako zdroj dat pro pohled Vypracovala: Procházková Petra.
SQL Další dotazy a pohledy Databázové systémy. Některé SQL příkazy mohou mít v sobě obsaženy další kompletní příkazy SELECT. Využijeme je tam, kde potřebujeme.
CUBE - Operátor relační agregace
Databázové systémy 1 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
SQL Structured Query Language
Databázové systémy I Přednáška č. 6 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Příkazy jazyka SQL ve VFP a na SQL Serveru
David Gešvindr MCT | MSP | MCITP | MCPD. Jak se zpracovává dotaz? Když norma nestačila Práce s XML Geografická data CTE Zpracování hierarchií a grafů.
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně AUTOR: Mgr. Jana Kijonková NÁZEV: Podpora výuky v technických oborech TEMA: Relační databáze – dotazy.
Vytvoření jednoduchého databázového dotazu Access (7)
Databázové systémy I Přednáška 7 Databázové systémy 1 – KIT/IDAS1
SQL – příkaz SELECT Ing. Roman Danel, Ph.D.
Databázové systémy I Přednáška 5 Databázové systémy 1 – KIT/IDAS1
Databázové systémy I Přednáška 8 Databázové systémy 1 – KIT/IDAS1
KIV/ZD cvičení 5 Tomáš Potužák.
Ing. Tomáš Váňa, Ing. Jiří Zechmeister
Databázové systémy a SQL
[ START WITH podmínka ] CONNECT BY podmínka
A5M33IZS – Informační a znalostní systémy
Optimalizace SQL dotazů
Počítačová cvičení z předmětu Datové sklady
Dotazovací jazyk SQL - II
Přednáška 7 SQL – JOIN.
Přednáška 6 SQL – spojení tabulek.
Transkript prezentace:

AGREGACE Distinct, Group By, Having, SUM, …

DISTINCT  Slučování stejných řádků ve výsledku dotazu. AGREGACE 2 JménoPříjmeníID FrantišekVomáčka1 JosefPokorný2 FrantišekNovák3 SELECT DISTINCT jméno FROM lidé Jméno František Josef

LIMIT (TOP)  Omezení počtu řádků ve výsledku AGREGACE 3 SELECT nazev FROM obce ORDER BY obyvatele LIMIT 10 Jen deset řádků SELECT nazev FROM obce ORDER BY obyvatele LIMIT 10 OFFSET 20 Jen deset řádků, začínáme od dvacátého

SESKUPOVÁNÍ DAT GROUP BY, HAVING AGREGACE 4

GROUP BY  Umožňuje získávat souhrnné výsledky dat podle nějakých kritérií.  Říká: vezmi výsledky SELECTu, dej je dohromady podle těchto sloupečků a pak získej následující informace.  Nemá smysl použít GROUP BY bez agregačních funkcí v seznamu sloupců.  Na vypočítávané sloupce nelze použít WHERE. AGREGACE 5

AGREGAČNÍ FUNKCE  COUNT (sloupec) - počet neprázdných řádků v daném sloupci, lze použít (*)  SUM (sloupec) - součet všech hodnot ve sloupci  AVG (sloupec) - průměr hodnot ve sloupci  MAX (sloupec) – největší hodnota ve sloupci  MIN (sloupec) – nejmenší hodnota ve sloupci AGREGACE 6

PŘÍKLAD: POČET LIDÍ SE JMÉNEM AGREGACE 7 IDJménoPříjmení 0FrantišekVomáčka 1JanPokorný 2FrantišekČerný 3JanaPokorná SELECT Jméno, COUNT(Jméno) FROM Lidé GROUP BY Jméno JménoCount(Jméno) František2 Jan1 Jana1

AS  Sloupce s agregacemi se špatně zpracovávají  Je vhodné je přejmenovat pomocí AS AGREGACE 8 SELECT Jméno, COUNT(Jméno) AS Počet FROM Lidé GROUP BY Jméno JménoPočet František2 Jan1 Jana1

HAVING  Restrikce na sloupce s vypočítávanou (agregovanou) hodnotou AGREGACE 9 IDJménoPříjmení 0FrantišekVomáčka 1JanPokorný 2FrantišekČerný 3JanaPokorná SELECT Jméno, COUNT(Jméno) AS Počet FROM Lidé GROUP BY Jméno HAVING Počet > 1 JménoPočet František2

POŘADÍ ČÁSTÍ SELECT 1.SELECT 2.FROM (JOIN) 3.WHERE 4.GROUP BY 5.HAVING 6.ORDER BY 7.(LIMIT) AGREGACE 10

VYHODNOCENÍ SELECTU 1.Sestaví se všechny řádky a všechny sloupce na všech tabulkách (kartézský součin) 2.Omezí se sloupce 3.Omezí se řádky WHERE 4.Provede se GROUP BY 5.Vypočítají se agregované sloupce 6.Omezí se přes HAVING 7.Řádky se seřadí pomocí ORDER BY AGREGACE 11