Funkcje agregujące służą do wykonywania obliczeń na wielu wierszach tabeli i zwracają zwykle jedną wartość wynikową. Stosuje się je wtedy, gdy trzeba policzyć sumę, średnią, liczbę rekordów, minimum albo maksimum.
Najczęściej używane funkcje agregujące
SUM(kolumna)- oblicza sumę wartości w kolumnie liczbowej,AVG(kolumna)- oblicza średnią,COUNT(*)- zlicza liczbę wierszy,COUNT(kolumna)- zlicza niepuste wartości w kolumnie,MIN(kolumna)- zwraca najmniejszą wartość,MAX(kolumna)- zwraca największą wartość.
Przykład
Tabela programisci zawiera kolumnę ilosc_kodu, czyli liczbę linii kodu napisanych przez każdego programistę.
Aby policzyć łączną liczbę linii kodu, należy użyć funkcji SUM():
SELECT SUM(ilosc_kodu) FROM programisci;
Oznacza to: zsumuj wartości z kolumny ilosc_kodu we wszystkich rekordach tabeli programisci.
Ważne zasady
Funkcja agregująca działa na kolumnie, a dane są pobierane z tabeli wskazanej po FROM.
Poprawny schemat zapytania to:
SELECT FUNKCJA(kolumna) FROM tabela;
Przykłady:
SELECT COUNT(*) FROM programisci;
SELECT AVG(ocena) FROM programisci;
SELECT MAX(ilosc_kodu) FROM programisci;
Typowy błąd egzaminacyjny
Błędne jest traktowanie nazwy kolumny jak nazwy tabeli, np.:
SELECT SUM(ocena) FROM ilosc_kodu;
Jeżeli ilosc_kodu jest kolumną, a nie tabelą, takie zapytanie jest niepoprawne logicznie.