MySQL中的GROUP BY語句可以將查詢結果按指定列進行分組,然后對每個組進行聚合運算。
SELECT column1, column2, aggregate_function(column3) FROM table_name GROUP BY column1, column2;
以上是GROUP BY語句的基本語法,其中column1和column2是用來分組的列,aggregate_function(column3)則是對分組結果使用聚合函數進行計算的結果列。
使用GROUP BY語句時需要注意以下幾點:
- 如果查詢中使用了GROUP BY子句,則SELECT語句中只能出現被指定為分組列或聚合函數參數的列。
- GROUP BY子句必須放在WHERE子句之后,ORDER BY子句之前。
- 如果使用GROUP BY子句,則SELECT語句中的每個非聚合列必須和GROUP BY子句中的至少一個列相同。
舉個例子:
SELECT customer_name, COUNT(order_id) FROM orders GROUP BY customer_name;
在以上的查詢中,我們根據顧客名分組,并對每個分組計算了訂單數。查詢結果將會按顧客名進行分組,并顯示每個顧客的訂單數。