Sobes.tech
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.