1 / 11

Agregace

Agregace. Distinct , Group By, Having , SUM, …. Distinct. Slučování stejných řádků ve výsledku dotazu. SELECT DISTINCT jméno FROM lidé. LIMIT (TOP). Omezení počtu řádků ve výsledku. SELECT nazev FROM obce ORDER BY obyvatele LIMIT 10. Jen deset řádků.

Download Presentation

Agregace

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agregace Distinct, Group By, Having, SUM, …

  2. Distinct Agregace • Slučování stejných řádků ve výsledku dotazu. SELECT DISTINCT jméno FROM lidé

  3. LIMIT (TOP) Agregace • Omezení počtu řádků ve výsledku 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

  4. Agregace GROUP BY, HAVING Seskupování dat

  5. GROUP BY Agregace • 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.

  6. Agregační funkce Agregace • 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

  7. Příklad: Počet lidí se jménem Agregace SELECT Jméno, COUNT(Jméno) FROM Lidé GROUP BY Jméno

  8. AS Agregace • Sloupce s agregacemi se špatně zpracovávají • Je vhodné je přejmenovat pomocí AS SELECT Jméno, COUNT(Jméno) AS Počet FROM Lidé GROUP BY Jméno

  9. Having Agregace • Restrikce na sloupce s vypočítávanou (agregovanou) hodnotou SELECT Jméno, COUNT(Jméno) AS Počet FROM Lidé GROUP BY Jméno HAVING Počet > 1

  10. Pořadí částí SELECT Agregace • SELECT • FROM (JOIN) • WHERE • GROUP BY • HAVING • ORDER BY • (LIMIT)

  11. Vyhodnocení SELECTU Agregace • Sestaví se všechny řádky a všechny sloupce na všech tabulkách (kartézský součin) • Omezí se sloupce • Omezí se řádky WHERE • Provede se GROUP BY • Vypočítají se agregované sloupce • Omezí se přes HAVING • Řádky se seřadí pomocí ORDER BY

More Related