Przejdź do głównej treści
eLearner.app
Moduł 2 · Lekcja 4 z 48/57 w kursie~8 min
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 (ignoruje NULL).
  • MAX(column) / MIN(column) — wartość maksymalna/minimalna.
  • SUM(column) — suma wartości liczbowych.
SQL
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.

SQL
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;

Spróbuj

Ćwiczenie#sql.m2.l4.e1
Próby: 0Ładowanie...

Ilu pracowników zostało zatrudnionych od 1 stycznia 2020 roku? Zwróć pojedynczą liczbę (jeden wiersz, jedna kolumna).

Ładowanie edytora...
Pokaż wskazówkę

Funkcja zliczająca wiersze to COUNT(*).

Rozwiązanie dostępne po 3 próbach

Przejrzyj ćwiczenie

Ćwiczenie#sql.m2.l4.e2
Próby: 0Ładowanie...

W jednym zapytaniu oblicz średnie (AVG) i maksymalne (MAX) wynagrodzenie pracowników działu Marketingu (department_id = 3). Jeden rząd, dwie kolumny.

Ładowanie edytora...
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