• 20.8.2016
  • Ing. Jan Zedníček - Data & Finance
  • 0

SQL agregační funkce – AVG, COUNT, MAX, MIN, SUM jsou jedny z nejpoužívanějších funkcí jak v Excelu tak i v SQL. Zdaleka nejčastěji totiž potřebujeme něco sečíst, zprůměrovat, určit minimální a maximální hodnotu.

Při aplikaci agregační funkce je přítomnost klauzule GROUP BY povinná (pokud tedy zrovna neprovádíme operace nad okny pomocí OVER()).

Seznam agregačních funkcí:

  • AVG() – Vrátí přůměrnou hodnotu ze souboru dat
  • COUNT() – Vrátí počet řádků (hodnot)
  • MAX() – Vrátí maximální (nejvyšší) hodnotu
  • MIN() – Vrátí minimální (nejmenší) hodnotu
  • SUM() – Vrátí součet hodnot

Kombinace agregační funkce a klauzule GROUP BY umožňuje data řezat přes různé sloupce (příklad v článku o GROUP BY) to je důležité pro to, abychom mohli snížit atomicitu dat.

Praktický příklad použítí agregačních funkcí:

Mějme tabulku s Tržbami [SalesAmount] a datumem objednávky [OrderDate].

SQL Agregační funkce
Vstupní data

V ukázce použijeme aplikaci všech agregačních funkcí na tržby, nejlépe je to vidět na příkladu.

SELECT
  CAST(OrderDate AS DATE) AS Datum_Objednavky,
  SUM(SalesAmount)        AS Soucet_trzeb,
  AVG(SalesAmount)        AS Prumer_trzeb,
  COUNT(SalesAmount)      AS Pocet_trzeb,
  MAX(SalesAmount)        AS Maximalni_trzba,
  MIN(SalesAmount)        AS Minimalni_trzba
FROM AdventureWorksDW2014.dbo.FactInternetSales
GROUP BY OrderDate
ORDER BY OrderDate;



5/5 - (2 votes)

Ing. Jan Zedníček - Data & Finance

Jmenuji se Honza Zedníček a působím jako freelancer. Tuto práci dělám pro různé firmy již přes 10 let. Před tím jsem dlouhou dobu pracoval také jako BI developer, finanční controller, analytik a krátce jako finanční manažer. Vše pro společnosti z oblasti IT, bankovnictví a výroby. Po práci si rád zahraju tenis, volejbal, šachy, zajdu do posilovny a rád ochutnávám dobré rumy. Svoje znalosti a názory se snažím už několik let zapisovat na tento web, aby sloužily i někomu dalšímu - zejména studentům a zájemcům o informace z oblastí Business intelligence, korporátních financí a reportingu.

=> Přihlašte se do naší Excel facebook skupiny (1.4k+ členů), kde si pomáháme Excel CZ/SK diskuse »
=> Pokud vám článek pomohl, sdílejte ho nebo mě uveďte na vašich webových stránkách jako užitečný zdroj informací.

Leave a Reply

Your email address will not be published. Required fields are marked *