在SQL查询中,常见的聚合函数通常包括哪些类型?请说明每个函数的具体功能,以及它们分别用于处理哪些类型的数据或场景。
考察说明
考查对SQL聚合函数的基本概念和常见用法的掌握程度,以及区分不同函数适用场景的能力。
回答思路
- 【回答框架 1】聚合函数是对一组值执行计算并返回单一值的函数,常与GROUP BY子句配合使用,常见的包括COUNT、SUM、AVG、MAX和MIN。COUNT用于统计行数,可对特定列或所有行计数,忽略NULL值;SUM用于对数值列求和,忽略NULL;AVG计算数值列的平均值,同样忽略NULL;MAX和MIN分别返回某列的最大值和最小值,可用于数值、日期或文本类型。
- 【回答框架 2】这些函数都忽略NULL值,但COUNT(*)不会忽略任何行。使用时需注意SUM和AVG只能应用于数值类型,而MAX和MIN可用于多种数据类型。聚合函数通常与GROUP BY一起使用,以对每个分组进行统计,但不能在WHERE子句中直接使用,需通过HAVING过滤分组。
- 【回答框架 3】在业务场景中,COUNT常用于统计记录总数,SUM用于汇总金额或数量,AVG用于分析平均值,MAX和MIN用于找出极值,例如最高工资和最低温度等。理解这些函数的差异和适用条件是写出正确SQL查询的基础。
- 【关键点 1】COUNT统计行数,忽略NULL;SUM和AVG仅适用于数值列;MAX和MIN可用于数值、日期和文本。
- 【关键点 2】聚合函数常与GROUP BY配合,且不能直接用于WHERE,需用HAVING过滤分组。
- 【关键点 3】所有常见聚合函数均忽略NULL值,但COUNT(*)不忽略。
- 【易错点 1】误将SUM用于非数值类型导致错误。
- 【易错点 2】在WHERE子句中直接使用聚合函数,应改用HAVING。
- 【易错点 3】忽略NULL值对聚合结果的影响,例如AVG会跳过NULL行。