The GROUP BY
statement in MySQL is used to group rows that have the same values in one or more columns. The GROUP BY
statement can be used in combination with aggregate functions, such as COUNT
, SUM
, AVG
, MAX
, and MIN
, to perform calculations on the groups of rows.
The syntax for using the GROUP BY
statement is as follows:
SELECT column1, column2, ..., aggregate_function(column) FROM table_name GROUP BY column1, column2, ...;
In this syntax, column1
, column2
, and so on, represent the columns by which you want to group the data. The aggregate_function
is the function that you want to apply to the grouped data, such as COUNT
, SUM
, AVG
, MAX
, or MIN
. The column
argument for the aggregate function is the column that you want to perform the calculation on.
For example, if you have a table called sales
with columns region
, product
, and sales_amount
, you can use the GROUP BY
statement to calculate the total sales amount for each region and product combination:
SELECT region, product, SUM(sales_amount) FROM sales GROUP BY region, product;
This query will group the rows by region and product and calculate the sum of the sales_amount
column for each group. The result set will contain one row for each unique combination of region and product.
It’s important to note that any column that is not included in the GROUP BY
statement or an aggregate function cannot be included in the SELECT
statement. Additionally, if you use an aggregate function in the SELECT
statement, all non-aggregate columns must be included in the GROUP BY
statement.