Lekcje modułu (4/4)
Zliczanie i podsumowywanie: COUNT, AVG, MAX
Jak dotąd każde SELECT zwracało jeden wiersz dla każdego wiersza tabeli.
Funkcje agregujące działają odwrotnie: czytają wiele wierszy i zwracają
pojedyncza wartość, która je podsumowuje.
Najczęstsze z nich to:
COUNT(*)— ile jest wierszy.AVG(column)— średnia wartości numerycznych (ignorujeNULL).MAX(column)/MIN(column)— wartość maksymalna/minimalna.SUM(column)— suma wartości liczbowych.
SELECT COUNT(*),
AVG(salary),
MAX(salary)
FROM employees;Gdy agregat zostanie zastosowany do całej tabeli (bez GROUP BY, który
zobaczysz w następnym module), niezależnie od tego, wynikiem będzie pojedynczy wiersz
ile wierszy ma tabela źródłowa.
Łączenie z WHERE
WHERE filtruje przed agregacją: agregacja działa tylko w wierszach
które przeszło przez filtr.
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;Spróbuj
Ilu pracowników zostało zatrudnionych od 1 stycznia 2020 roku? Zwróć pojedynczą liczbę (jeden wiersz, jedna kolumna).
Pokaż wskazówkę
Funkcja zliczająca wiersze to COUNT(*).
Rozwiązanie dostępne po 3 próbach
Przejrzyj ćwiczenie
W jednym zapytaniu oblicz średnie (AVG) i maksymalne (MAX) wynagrodzenie pracowników działu Marketingu (department_id = 3). Jeden rząd, dwie kolumny.
Pokaż wskazówkę
Możesz umieścić kilka funkcji agregujących w tym samym SELECT, oddzielając je przecinkami.
Rozwiązanie dostępne po 3 próbach