Middle
Standardní otázka ohledně SQL: v čem se liší WHERE a HAVING?
sobes.tech AI
Odpověď od AI
Hlavní rozdíl mezi WHERE a HAVING v SQL spočívá v tom, v jaké fázi filtrují data:
WHEREfiltruje řádky před seskupením. Používá se k omezení původního datového souboru.HAVINGfiltruje skupiny po použití agregačních funkcí a seskupení (GROUP BY).
Příklad:
SELECT oddělení, COUNT(*) jako počet_zaměstnanců
FROM zaměstnanci
WHERE plat > 50000 -- filtrujeme zaměstnance s platem > 50000
GROUP BY oddělení
HAVING COUNT(*) > 10 -- vybírá oddělení s více než 10 zaměstnanci
Zde WHERE omezuje počáteční řádky, a HAVING konečné skupiny.