Sobes.tech
Middle

Jaké agregační a okénkové funkce jste ve své práci používal?

sobes.tech AI

Odpověď od AI

Při práci s daty jsem často používal následující agregační a okénkové funkce:

Agregační funkce:

  • SUM() — součet hodnot v skupině.
  • COUNT() — počet záznamů.
  • AVG() — výpočet průměrné hodnoty.
  • MIN() a MAX() — hledání minimální a maximální hodnoty.

Okénkové funkce:

  • ROW_NUMBER() — číslování řádků v rámci okna.
  • RANK() a DENSE_RANK() — řazení s ohledem na rovnosti.
  • LAG() a LEAD() — přístup k předchozí nebo následující hodnotě v okně.
  • SUM() OVER (PARTITION BY ...) — agregovaný součet s rozdělením do skupin bez seskupení celé vzorky.

Příklad použití okénkové funkce:

SELECT user_id, order_date, amount,
       SUM(amount) OVER (PARTITION BY user_id ORDER BY order_date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS running_total
FROM orders;

To umožňuje analyzovat kumulativní ukazatele a trendy v datech.