Какой вид имеет синтаксис фразы group by
Обновлено: 21.11.2024
Команда GROUP BY позволяет группировать результаты при выборке из базы данных.
К сгруппированным результатам можно применять любые функции (смотрите примеры).
См. также команду HAVING, которая позволяет накладывать условие на группы, созданные с помощью GROUP BY .
Синтаксис
Примеры
Все примеры будут по этой таблице workers, если не сказано иное:
id айди | name имя | age возраст | salary зарплата |
---|---|---|---|
1 | Дима | 23 | 100 |
2 | Петя | 23 | 200 |
3 | Вася | 23 | 300 |
4 | Коля | 24 | 1000 |
5 | Иван | 24 | 2000 |
6 | Кирилл | 25 | 1000 |
Пример
В данном примере записи группируются по возрасту (будет 3 группы - 23 года, 24 года и 25 лет). Затем для каждой группы применяется функция SUM, которая суммирует зарплаты внутри данной группы.
В результате для каждой из групп (23 года, 24 года и 25 лет) будет подсчитана суммарная зарплата внутри этой группы:
SQL запрос выберет следующие строки:
age возраст | sum сумма |
---|---|
23 | 600 |
24 | 3000 |
25 | 1000 |
Пример
В данном примере мы используем дополнительное условие WHERE, чтобы взять не все записи из таблицы:
SQL запрос выберет следующие строки:
age возраст | sum сумма |
---|---|
23 | 500 |
24 | 3000 |
25 | 1000 |
Пример
В данном примере записи группируются по возрасту (будет 3 группы - 23 года, 24 года и 25 лет). Затем для каждой группы применяется функция MAX, которая находит максимальную зарплату внутри данной группы:
SQL запрос выберет следующие строки:
age возраст | max максимальная зарплата |
---|---|
23 | 300 |
24 | 2000 |
25 | 1000 |
Пример
А теперь с помощью функции MIN найдется минимальная зарплата внутри данной группы:
Читайте также: