Blog JSystems - uwalniamy wiedzę!

Szukaj

Funkcje agregujące, to takie funkcje, które zwracają jedną wartość wyliczoną na podstawie wielu wierszy. Wszystkie funkcje grupowe ignorują wiersze zawierające wartość null w kolumnie, na której działają. Opcjonalnie do każdej funkcji można dodać modyfikator distinct co będzie skutkowało przeliczeniem nie uwzględniającym wartości, które się powtórzą.


AVG


avg (wyrażenie) – funkcja oblicza wartość średnią wyrażenia dla wszystkich wierszy.


select avg(ListPrice) from SalesLT.Product;


58.jpg (700×169)


Wyświetlona została średnia cena produktu.


select avg(distinct ListPrice) from SalesLT.Product;


59.jpg (833×172)


Wyświetlona została średnia cena produktu, nie uwzględniając powtórzonych wartości.


SUM


Funkcja oblicza sumę wartości wyrażeń dla wszystkich wierszy.


select sum(distinct ListPrice) from SalesLT.Product;


60.jpg (706×171)


Wyświetlona została suma cen wszystkich produktów.


select sum(distinct ListPrice) from SalesLT.Product;


61.jpg (837×170)


Wyświetlona została suma cen wszystkich produktów, nie uwzględniając powtórzonych wartości.


MIN


Funkcja oblicza minimalną wartość wyrażenia, wartość wyrażenia może być liczbą, ciągiem znaków lub datą. W przypadku daty zwraca najwcześniejszą, w przypadku tekstu, pierwszy ciąg uszeregowany wg alfabetu.


select min(ListPrice) from SalesLT.Product;


62.jpg (700×172)


Wyświetlona najniższa cena produktu.


select min(Name) from SalesLT.Product;


63.jpg (628×172)


Wyświetlona „najniższa nazwa” produktu (względem porządku alfabetycznego).


select min(SellStartDate) from SalesLT.Product;


64.jpg (757×174)


Wyświetlona najwcześniejsza data sprzedaży produktu.


MAX


Funkcja oblicza maksymalną wartość wyrażenia, wartość wyrażenia może być liczbą, ciągiem znaków lub datą. W przypadku daty zwraca najpóźniejszą, w przypadku tekstu, ostatni ciąg uszeregowany wg alfabetu.


select max(ListPrice) from SalesLT.Product;


65.jpg (700×171)


Wyświetlona najwyższa cena produktu.


select max(Name) from SalesLT.Product;


66.jpg (626×173)


Wyświetlona „najwyższa nazwa” produktu (względem porządku alfabetycznego).


select max(SellStartDate) from SalesLT.Product;


67.jpg (759×172)


Wyświetlona najstarsza data sprzedaży produktu.


COUNT


count (wyrażenie) - funkcja zwraca ilość wierszy dla których wyrażenie jest różne od null. Zamiast wpisywać nazwę kolumny, można uzyć znaku "*" - wtedy zostanie zliczona liczba wszystkich wierszy w tabeli.


select count(Name) from SalesLT.Product;


68.jpg (655×172)


Wyświetlona została ilość nazw produktów (podliczenie ilości wierszy dla kolumny Name).


select count(*) from SalesLT.Product;


69.jpg (614×175)


Wyświetlona została ilość wierszy  (podliczenie ilości wierszy dla całej tabeli SalesLT.Product).


W przypadku funkcji agregujących nazwy kolumn również tracą swoją nazwę, dlatego i tu najlepiej użyć aliasów, by później wiedzieć co dana kolumna przedstawia.


select count(*) IlośćWierszy from SalesLT.Product;


70.jpg (784×184)


Wyświetlona została ilość wierszy  (podliczenie ilości wierszy dla całej tabeli SalesLT.Product) z odpowiednim aliasem dla tej kolumny.


Funkcji agregujących możemy używać także kilku na raz w jednym zapytaniu.


71.jpg (889×170)


W jednym zapytaniu wyświetlone zostały wartości: średnia cena produktu, suma cen produktów, minimalna cena produktu, maksymalna cena produktu oraz ilość wszystkich produktów. Kolumnom zostały nadane odpowiednie aliasy.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...