Funkcje agregujące

Z punktu widzenia analizy danych, najważniejszymi funkcjami agregującymi są:

– SUM() – suma,

– AVG() średnia arytmetyczna,

– MIN() – minimum,

– MAX() – maksimum,

– COUNT() – Zlicz.

Agregacja następuje na rekordach konkretnej kolumny, np zsumowaniu wartości w danej kolumnie tabeli. Poniżej najprostsze wykorzystanie tych funkcji. Bierzemy do kalkulacji kolumnę listprice w tabeli Production.Product:

use AdventureWorks2014;
select
sum(listprice) as suma, --suma cen
avg(listprice) as avg1, -- średnia cena
min(listprice) as min1, -- najmniejsza cena
max(listprice) as max1, --największa cena
count(listprice) as count1, --liczba rekordów niepustych
count(1) as count2,
count(color) as count3
from Production.Product
go

Na powyższym przykładzie możemy zobaczyć 3 możliwości zastosowania funkcji COUNT(). Pierwsze zastosowanie zlicza wszystkie niepuste rekordy w kolumnie listprice. Kolejne zastosowanie pozwala nam zliczyć liczbę rekordów w całej tabeli. Trzecie zastosowanie wykonane na kolumnie color zlicza nam tylko rekordy, które w kolumnie color mają wartość inną niż  NULL. Funkcje mogą przyjmować argumenty o różnych typach danych. Przykładowo, zastosowanie funkcji minimum na kolumnie o typie tekstowym wskaże nam najmniejszą wartość w kolejności alfabetycznej. Max() spowoduje dzianie odwrotne. Zastosowanie funkcji min() lub max() na kolumnie o typach daty i czasu wskaże nam daty najmniejsze lub największe.

Poniżej krótkie rozpisanie pozostałych funkcji agregujących. Funkcje te mają zastosowanie przede wszystkim w statystyce.

– STDEV() – odchylenie standardowe

– STDEVP() – odchylenie standardowe populacji

– VAR() – Wariancja

– VARP() – Wariancja populacji

– COUNT_BIG()

– GROUPING()

– GROUPING_ID()

– CHECKSUM_AGG()

use AdventureWorks2014;
select
STDEV(costrate) as wynik1,
STDEVP(costrate) as wynik2,
var(costrate) as wynik3,
varp(costrate) as wynik4
from Production.Location;
go

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *