Sobes.tech
Junior

Jaký SQL dotaz je třeba použít pro seskupení dat?

sobes.tech AI

Odpověď od AI

SELECT
    column1,
    column2,
    aggregate_function(column3)
FROM
    your_table
WHERE
    condition
GROUP BY
    column1,
    column2
ORDER BY
    column1;

Používá se GROUP BY. Skupinuje řádky se stejnými hodnotami ve jednom nebo více sloupcích do jednoho souhrnného řádku, pro který lze použít agregační funkce (například COUNT, SUM, AVG, MIN, MAX).

  • SELECT - určuje sloupce, které mají být vybrány. Měly by obsahovat sloupce pro seskupení a/nebo agregační funkce.
  • FROM - určuje tabulku, ze které jsou data vybírána.
  • WHERE - volitelná podmínka pro filtrování řádků před seskupením.
  • GROUP BY - určuje sloupce, podle kterých budou data seskupena. Všechny neseskupené sloupce v SELECT musí být v GROUP BY.
  • HAVING - volitelná podmínka pro filtrování skupin po seskupení (používá se s agregačními funkcemi).
  • ORDER BY - volitelná podmínka pro řazení výsledných řádků.

Příklad agregačních funkcí:

Funkce Popis
COUNT() Počítá počet řádků ve skupině.
SUM() Vypočítá součet hodnot ve sloupci pro každou skupinu.
AVG() Vypočítá průměrnou hodnotu ve sloupci pro každou skupinu.
MIN() Najde minimální hodnotu ve sloupci pro každou skupinu.
MAX() Najde maximální hodnotu ve sloupci pro každou skupinu.