SQL 面试题 目录

SQL 中如何使用 GROUP BY 子句分组数据?

推荐答案

本题详细解读

GROUP BY 子句的作用

GROUP BY 子句用于将结果集按一个或多个列进行分组。通常与聚合函数(如 COUNT, SUM, AVG, MAX, MIN 等)一起使用,以便对每个分组进行计算。

语法解析

  • SELECT 语句中的列必须出现在 GROUP BY 子句中,或者是聚合函数的参数。
  • aggregate_function(column3) 是对分组后的数据进行聚合计算,例如求和、计数等。
  • WHERE 子句用于过滤数据,GROUP BY 子句在 WHERE 子句之后执行。

示例

假设有一个 orders 表,包含以下列:order_id, customer_id, order_date, amount

这个查询会按 customer_id 分组,并计算每个客户的总订单金额。

注意事项

  • 如果 SELECT 语句中的列没有出现在 GROUP BY 子句中,也不是聚合函数的参数,SQL 会报错。
  • GROUP BY 子句可以按多个列进行分组,只需在 GROUP BY 后列出这些列,用逗号分隔。
纠错
反馈