Функции COUNT
, SUM
, AVG
, MIN
и MAX
— это агрегатные функции в SQL, которые позволяют выполнять расчёты и анализ данных в таблице. Они помогают подводить итоги, вычислять средние значения, находить минимальные и максимальные показатели и т.д. Рассмотрим каждую функцию более подробно.
1. Функция COUNT
Функция COUNT
подсчитывает количество строк, соответствующих заданному критерию. Это полезно для определения количества записей по определённому условию.
-
Синтаксис:
SELECT COUNT(столбец) FROM имя_таблицы WHERE условие;
-
Пример использования:
SELECT COUNT(employee_id) FROM employees WHERE department = 'Sales';
Этот запрос вернёт количество сотрудников в отделе Sales
.
-
Особенность: COUNT(*)
возвращает количество всех строк, включая те, где значения в колонках могут быть NULL
. Если же использовать COUNT(столбец)
, то будут подсчитаны только строки с непустыми значениями в этом столбце.
2. Функция SUM
Функция SUM
вычисляет сумму всех значений в указанном столбце, которые соответствуют критерию. Она используется для числовых столбцов, например, чтобы рассчитать общую сумму зарплат в компании.
-
Синтаксис:
SELECT SUM(столбец) FROM имя_таблицы WHERE условие;
-
Пример использования:
SELECT SUM(salary) FROM employees WHERE department = 'IT';
Этот запрос вернёт общую сумму зарплат сотрудников, работающих в отделе IT
.
-
Особенность: Если в выбранном столбце есть значения NULL
, они игнорируются, и функция вычисляет сумму только для непустых значений.
3. Функция AVG
Функция AVG
возвращает среднее арифметическое значение числового столбца. Она полезна для анализа, например, среднего возраста сотрудников или средней зарплаты.
-
Синтаксис:
SELECT AVG(столбец) FROM имя_таблицы WHERE условие;
-
Пример использования:
SELECT AVG(age) FROM employees WHERE department = 'Marketing';
Этот запрос вернёт средний возраст сотрудников из отдела Marketing
.
-
Особенность: Как и SUM
, AVG
игнорирует значения NULL
и рассчитывает среднее только по непустым значениям.
4. Функция MIN
Функция MIN
возвращает минимальное значение в указанном столбце. Её можно использовать для поиска наименьшего значения, например, минимальной зарплаты или возраста.
-
Синтаксис:
SELECT MIN(столбец) FROM имя_таблицы WHERE условие;
-
Пример использования:
SELECT MIN(salary) FROM employees;
Этот запрос вернёт минимальную зарплату среди всех сотрудников.
-
Особенность: Если столбец содержит NULL
значения, они игнорируются, и возвращается наименьшее из существующих непустых значений.
5. Функция MAX
Функция MAX
возвращает максимальное значение в указанном столбце. Она полезна для поиска самого высокого показателя, например, максимальной зарплаты или наибольшего возраста.
-
Синтаксис:
SELECT MAX(столбец) FROM имя_таблицы WHERE условие;
-
Пример использования:
SELECT MAX(age) FROM employees;
Этот запрос вернёт возраст самого старшего сотрудника.
-
Особенность: Как и MIN
, функция MAX
игнорирует значения NULL
.
Примеры совместного использования функций
Эти функции можно использовать в одном запросе для выполнения нескольких расчётов сразу. Например, чтобы получить статистику по зарплатам сотрудников:
SELECT COUNT(employee_id) AS total_employees,
SUM(salary) AS total_salary,
AVG(salary) AS avg_salary,
MIN(salary) AS min_salary,
MAX(salary) AS max_salary
FROM employees;
Этот запрос вернёт:
- общее количество сотрудников (
COUNT
),
- суммарную зарплату (
SUM
),
- среднюю зарплату (
AVG
),
- минимальную зарплату (
MIN
),
- максимальную зарплату (
MAX
).
Заключение
Агрегатные функции COUNT
, SUM
, AVG
, MIN
и MAX
— мощные инструменты для анализа данных, которые позволяют легко извлекать статистическую информацию из таблиц.