Grupuj według (SQL)
Instrukcja GROUP BY
w języku SQL określa, że instrukcja SQL SELECT
dzieli wiersze wyników na grupy na podstawie ich wartości w jednej lub kilku kolumnach. Zazwyczaj grupowanie służy do zastosowania pewnego rodzaju funkcji agregującej dla każdej grupy.
Wynik zapytania używającego instrukcji GROUP BY
zawiera jeden wiersz dla każdej grupy. Oznacza to ograniczenia dotyczące kolumn, które mogą pojawić się w powiązanej SELECT
. Zgodnie z ogólną zasadą SELECT
może zawierać tylko kolumny z unikalną wartością dla grupy. Obejmuje to kolumny pojawiające się w GROUP BY
, a także agregaty dające jedną wartość na grupę.
Przykłady
Zwraca listę identyfikatorów działów wraz z sumą ich sprzedaży na dzień 1 stycznia 2000 r.
WYBIERZ DeptID , SUMA ( SaleAmount ) FROM Sales WHERE SaleDate = '01-sty-2000' GROUP BY DeptID
Zwraca dane z przykładowej tabeli przestawnej , która odpowiada na pytanie „Ile jednostek sprzedaliśmy w każdym regionie dla każdej daty wysyłki?”:
WYBIERZ Region , Data_Wysyłki , SUMA ( Jednostki ) AS Suma_Jednostek Z FlatData GROUP BY Region , Data_Wysyłki
Typowe funkcje grupowania ( agregacji ) obejmują:
- Liczba ( wyrażenie ) — Liczba pasujących rekordów (na grupę)
- Suma ( wyrażenie ) - Suma podanej wartości (na grupę)
- Min ( wyrażenie ) - Minimum podanej wartości (na grupę)
- Max ( wyrażenie ) - Maksimum podanej wartości (na grupę)
- Avg ( wyrażenie ) - Średnia podanej wartości (na grupę)
Zobacz też
- ^ „Instrukcja SQL GROUP BY” . www.w3schools.com . Źródło 2020-09-18 .
- Bibliografia _ "GROUP BY (Transact-SQL) — SQL Server" . docs.microsoft.com . Źródło 2020-09-18 .
- ^ „Grupowanie i agregacja SQL” . baza danychwyklad.com . Źródło 2020-12-09 .
Linki zewnętrzne