聚合函数是SQL中的一个子程序,在被调用时会返回一个单一的值。它用于对表中的属性或字段进行标准统计计算,例如计算总值、平均值、查找极值(最小/最大),以及计算记录数。
简而言之,聚合函数处理多行数据以生成一个简洁且有信息量的输出值。
1. 聚合函数的类型
在数据处理中,常用的聚合函数主要有五种:
- SUM 此函数用于对指定列的所有数据求和。需要注意的是,SUM函数只能应用于数值数据类型的列。语法:SELECT SUM(列_名) FROM 表_名 WHERE 条件;
- COUNT 此函数用于计算某列中的行数。与SUM不同,COUNT函数可以用于数值和非数值(字符串/文本)数据类型。语法:SELECT COUNT(列_名) FROM 表_名 WHERE 条件;
- AVG(平均值) 此函数用于计算某列的平均值。与SUM一样,该函数仅适用于数值数据类型。语法:SELECT AVG(列_名) FROM 表_名 WHERE 条件;
- MIN 此函数用于显示某列的最小值。MIN函数灵活,可用于数值和非数值数据类型。语法:SELECT MIN(列_名) FROM 表_名 WHERE 条件;
- MAX 与MIN相反,此函数用于显示某列的最大值。该函数也支持数值和非数值数据类型。语法:SELECT MAX(列_名) FROM 表_名 WHERE 条件;
2. GROUP BY子句
GROUP BY子句用于根据所需表达式将一个或多个列上的数据分组。其工作原理是将具有相同值的记录收集到同一组中。
该子句的使用与聚合函数密切相关,我们经常希望查看每个特定类别的统计结果(如总计或平均值)。语法:SELECT 列_名 FROM 表_名 GROUP BY 列_名;
3. HAVING子句
HAVING子句的功能与WHERE子句类似,用于为查询结果添加条件或筛选。然而,两者之间存在根本区别:
- 替代WHERE:WHERE子句不能与聚合函数同时使用。因此,HAVING用于根据聚合函数的结果筛选数据。
- 多行操作:HAVING用于多行操作(数据分组后),而WHERE在数据分组前作用于单行级别。
语法:SELECT 列_名 FROM 表_名 GROUP BY 列_名 HAVING 条件;
Tags:
#编程
W
作者
Wilan
巴厘岛Tekno的常驻撰稿人,积极分享技术、编程和软件工程领域的知识。
返回首页
最后更新日期:2026年6月5日