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
子句一起使用,以过滤满足特定条件的分组。