MySQL的GROUP BY語句用于根據指定的列對查詢結果進行分組。它通常與聚合函數(如SUM、COUNT、AVG等)一起使用,用于對每個組的數據進行計算或匯總。
GROUP BY語句的基本語法如下:
SELECT column1, column2, ..., aggregate_function(column_name)
FROM table
WHERE conditions
GROUP BY column1, column2, ...
其中,column1、column2等是要查詢的列名,aggregate_function是聚合函數,table是表的名稱,conditions是查詢的條件。
GROUP BY語句的執行流程如下:
GROUP BY語句的應用場景包括:
需要注意的是,GROUP BY語句必須與聚合函數一起使用,否則會報錯。同時,如果SELECT子句中的列不在GROUP BY子句中,那么它們必須是聚合函數的參數。
舉個例子,假設有一個名為orders的表,包含了訂單的信息。要統計每個客戶的訂單數量,可以使用以下的GROUP BY語句:
SELECT customer_id, COUNT(*) as order_count
FROM orders
GROUP BY customer_id;
這樣將返回每個客戶的ID和對應的訂單數量。