От автора code.mu: РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
112 of 150 menu

Команда GROUP BY

Команда GROUP BY позволяет группировать результаты при выборке из базы данных. К сгруппированным результатам можно применять любые функции (смотрите примеры).

Синтаксис

SELECT * FROM table_name WHERE condition GROUP BY field

Таблицы для примеров

employees
id name age salary
1 user1 23 400
2 user2 24 500
3 user3 23 500
4 user4 24 900
5 user5 25 500
6 user6 25 900

Пример

Давайте сгруппируем записи таблицы по возрасту (будет 3 группы - 23 года, 24 года и 25 лет), а затем для каждой группы применим функцию SUM, которая суммирует зарплаты внутри данной группы:

В результате для каждой из групп (23 года, 24 года и 25 лет) будет подсчитана суммарная зарплата внутри этой группы:

SELECT age, SUM(salary) AS sum FROM employees GROUP BY age

Результат выполнения кода:

age sum
23 900
24 1400
25 1400

Пример

Давайте используем дополнительное условие WHERE, чтобы выбрать не все записи из таблицы:

SELECT age, SUM(salary) AS sum FROM employees WHERE id >= 2 GROUP BY age

Результат выполнения кода:

age sum
23 500
24 1400
25 1400

Пример

Давайте сгруппируем записи по возрасту (будет 3 группы - 23 года, 24 года и 25 лет), а затем для каждой группы применим функцию MAX, которая находит максимальную зарплату внутри данной группы:

SELECT age, MAX(salary) AS max FROM employees GROUP BY age

Результат выполнения кода:

age max
23 500
24 900
25 900

Пример

Давайте с помощью функции MIN найдём минимальную зарплату внутри данной группы:

SELECT age, MIN(salary) AS min FROM employees GROUP BY age

Результат выполнения кода:

age min
23 400
24 500
25 500

Пример

Давайте с помощью функции COUNT найдём количество записей в группе:

SELECT age, COUNT(*) AS count FROM employees GROUP BY age

Результат выполнения кода:

age count
23 2
24 2
25 2

Смотрите также

  • команду HAVING,
    которая позволяет накладывать условие на группы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить