Функции 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 — мощные инструменты для анализа данных, которые позволяют легко извлекать статистическую информацию из таблиц.