Описание тега group-by
GROUP BY - это команда в стандарте реляционной базы данных SQL для свертывания группы строк, которые имеют общие значения полей, в одну строку. Агрегатные функции могут выполняться для других полей в группе, таких как SUM() или AVG(), для сопоставления связанных данных в одно значение.
Около
В GROUP BY
Оператор используется вместе с агрегатными функциями для группировки набора результатов по одному или нескольким столбцам.
Агрегатные функции могут выполняться для других полей в группе, таких как SUM() или AVG(), для сопоставления связанных данных в одно значение.
Синтаксис
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
Обработка MySQL GROUP BY
В стандартном SQL запрос, включающий GROUP BY
предложение не может ссылаться на неагрегированные столбцы в списке выбора, которые не указаны в GROUP BY
пункт. Например, этот запрос недопустим в стандартном SQL, поскольку столбец имени в списке выбора не отображается вGROUP BY
:
SELECT o.custid, c.name, MAX(o.payment)
FROM orders AS o, customers AS c
WHERE o.custid = c.custid
GROUP BY o.custid;
Чтобы запрос был законным, столбец имени должен быть исключен из списка выбора или назван в GROUP BY
пункт.
GROUP BY (агрегированные) функции