Facebook iconTwitter icon

Nachádzate sa tu

Domov

08. SQL HAVING

SQL príkaz HAVING je vo svojej podstate alternatívou príkazu WHERE, s tým rozdielom, že sa používa v prípade, že chcheme vytvoriť podmienku na akregačnú funckiu typu SUM(), AVG(), COUNT().

Príklad: V príklade budeme uvažovať o hypotetickej databáze, v ktorej máme dáta obsahujúce mzdové náklady za rôzne dcérske podniky. Úlohou bude teda zrátaťmzdové náklady na úrovni jednotlivých dcérskych podnikov, avšak zoberieme len tie dcéry, ktorých mzdové náklady sú  vyššie ako 15 000 EUR a sú mimo regiónu Stredného Slovenska.

SELECT dcersky_podnik, region, SUM(mzda+0,01*pocet_rokov*mzda) as mzdove_naklady
FROM tabulka_zamestnanci
GROUP BY dcersky_podnik, region
HAVING SUM(mzda+0,01*pocet_rokov*mzda) >15000
AND region NOT IN ('stredne_slovensko')

Je dôležité si uvedomiť, že HAVING sa nikdy nekombinuje s WHERE, a ak už máme v skripte HAVING ostatné podmienky píšeme v skripte cez AND pod HAVING. Alternatíva s WHERE SUM(mzda+0,01*pocet_rokov*mzda) je v SQL nezmeselná. 

Všetky príspevky v tejto kategórii:

Reklamné odkazy

kosime.sk
Kosenie trávy, čistenie pozemkov a záhradnícke práce