AGREGÁCIA

Pod agregáciu rozumieme zhlukovanie hodnôt, kde sa skupina riadkov tabuľky nahradí jedným riadkom. Predpisu pre výpočet hodnoty v zhluku sa hovorí agregačná funkcia.

Príklady agregačných funkcií: Príklady použitia agregačných funkcií
Úloha:.
Vytvorte tabuľku ZAMESTNANEC s atribútmi:
osobné číslo (primárny kľúč),
meno (povinný atribút),
priezvisko (povinný atribút),
bydlisko (povinný atribút),
tarifný plat (povinný atribút),
osobné ohodnotenie (nepovinný atribút).

Prílkady na jednoduché použitie agregačných funkcií, kde vznikne práve jeden riadok.

Koľko zamestnancov je v podniku? (tj. zistiť počet riadkov tabľuky)
SELECT COUNT(*)
FROM Zamestnanec;

Aký je maximálny plat?
SELECT MAX(TarifPlat)
FROM Zamestnanec;

Koľko zamestnancov dostáva osobné ohodnotenie, aký je maximálny, minmálny a priemerný plat a koľko bolo vyplatené na odmenách.
SELECT COUNT(OsobneOhodnotenie), MAX(TarifPlat) MIN(TarifPlat), AVG(TarifPlat), SUM(OsobneOhodnotenie)
FROM Zamestnanec;

Ak chceme použiť jeden zo stĺpcov tabuĺky ako kľúč pre zhlukovanie riadkov do agregátov je potrebné použiť GROUP BY a za ním meno agregačného stĺpca.
Zistite počty zamestnancov z jednotlivých miest. (tj. počty riadkov v ktorých je rovnaké bydlisko)
SELECT bydlisko, COUNT(*)
FROM Zamestnanec
GROUP BY bydlisko

Zistite koľko peňazí bolo vyplatených zamestnancom z jednotlivých miest.
SELECT bydlisko, SUM(plat)
FROM Zamestnanec
GROUP BY bydlisko

Zistite, z koľkých rôznych miest má podnik zamestnancov
SELECT COUNT(distinct bydlisko)
FROM Zamestnanec;

Ako kľúč pre zhlukovanie riadkov môžeme použiť viac stĺpcov. Vtedz sa hovorí o agregácii so zloženým kľúčom. Úloha:
1. Koľko bolo vyplatené na odmenách v jednotlivých mestách?
2. Koľko bolo vyplatené celkovo na odmenách zamestnancom bývajúcim mimo košíc?