Junior — Middle
Czy możesz wyjaśnić, co oznacza operator HAVING w SQL i w jakich przypadkach jest używany?
sobes.tech AI
Odpowiedź od AI
Operator HAVING w SQL służy do filtrowania wyników funkcji agregujących po grupowaniu danych za pomocą GROUP BY.
W przeciwieństwie do WHERE, które filtruje wiersze przed grupowaniem, HAVING filtruje grupy po zastosowaniu funkcji agregujących (np. COUNT, SUM, AVG).
Przykład użycia:
SELECT dział, COUNT(*) AS liczba_pracowników
FROM pracownicy
GROUP BY dział
HAVING COUNT(*) > 10;
To zapytanie wybierze tylko te działy, w których jest więcej niż 10 pracowników.
Podsumowując, HAVING stosuje się, gdy trzeba odfiltrować pogrupowane dane na podstawie warunków agregacji.