Wyrażenie GROUP BY
Wyrażenie GROUP BY używane jest aby zgrupować rekordy o tych samych wartościach, jak np. „pokaż liczbę pracowników w każdym z działów”. GROUP BY używane jest razem z funkcjami agregującymi (COUNT, MAX, MIN, SUM, AVG) aby zgrupować zbiór wynikowy po jednej lub większej ilości kolumn. Wyrażenie HAVING używane jest, aby filtrować zagregowany zbiór na podstawie wartości sumarycznej.
Wzór:
SELECT kolumna1
, kolumna2
, COUNT(kolumna3)
FROM Tabela1
WHERE warunek1
GROUP BY kolumna1, kolumna2
HAVING COUNT(kolumna3) > wartość
ORDER BY 1, 2;
Ważne! Jeśli w zapytaniu zawierającym funkcję agregującą występują dodatkowe kolumny, zawsze musimy użyć funkcji GROUP BY.