GROUP BY
函數在 SQL 中的主要作用是將結果集按照一個或多個列進行分組,以便對每個組執行聚合函數(如 COUNT、SUM、AVG、MAX、MIN 等)
例如,假設我們有一個名為 orders
的表,其中包含以下列:order_id
、customer_id
、order_date
和 amount
。現在,我們想要計算每個客戶的總訂單金額。為此,我們可以使用以下 SQL 查詢:
SELECT customer_id, SUM(amount) as total_amount
FROM orders
GROUP BY customer_id;
這個查詢首先根據 customer_id
列對 orders
表進行分組,然后使用 SUM()
聚合函數計算每個客戶的總訂單金額。最后,查詢結果將顯示每個客戶的 customer_id
和相應的 total_amount
。
需要注意的是,GROUP BY
子句中的列必須是 SELECT 語句中的一部分,除非它們被包含在聚合函數中。此外,GROUP BY
子句還可以與 HAVING
子句一起使用,以過濾滿足特定條件的分組。