在數據庫中,GROUP BY子句用于根據一個或多個列對結果進行分組。它常用于與聚合函數一起使用,以便對每個組應用聚合函數。
語法如下:
SELECT 列1, 列2, ... 列n
FROM 表名
WHERE 條件
GROUP BY 列1, 列2, ... 列n
例如,假設有一個名為"orders"的表,其中包含以下列:order_id, customer_id, order_date, order_total。如果我們想要按顧客分組,并且計算每個顧客的訂單總額,可以使用以下查詢:
SELECT customer_id, SUM(order_total) as total_order_amount
FROM orders
GROUP BY customer_id
在這個例子中,我們按customer_id列分組,并使用SUM函數計算每個顧客的訂單總額。結果將包含兩列:customer_id和total_order_amount。
需要注意的是,GROUP BY子句中指定的列必須出現在SELECT子句中,或者是聚合函數的參數。否則,將會引發SQL語法錯誤。