在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
常用的聚合函数有哪些?怎么用?聚合函数可以对一组值执行计算并返回单一的值,多用于统计和计算分组数据。在实际的操作过程中国可以应用于查询语句的SELECT中或者HAVING子句中。 聚合函数实现了对数据表里面的数据进行计算和、平均值、最大值、最小值、统计总数等。
学习目标:能够写出查询总行数的SQL语句
1. 什么是聚合函数?
聚合函数又叫组函数,通常是对表中的数据进行统计和计算,一般结合分组(group by)来使用,用于统计和计算分组数据。
常用的聚合函数:
count(col): 表示求指定列的总行数
max(col): 表示求指定列的最大值
min(col): 表示求指定列的最小值
sum(col): 表示求指定列的和
avg(col): 表示求指定列的平均值
2. 求总行数
-- 返回非NULL数据的总行数.
select count(height) from students;
-- 返回总行数,包含null值记录;
select count(*) from students;
3. 求最大值
-- 查询女生的编号最大值
select max(id) from students where gender = 2;
4. 求最小值
-- 查询未删除的学生最小编号
select min(id) from students where is_delete = 0;
5. 求和
-- 查询男生的总身高
select sum(height) from students where gender = 1;
-- 平均身高
select sum(height) / count(*) from students where gender = 1;
6. 求平均值
-- 求男生的平均身高, 聚合函数不统计null值,平均身高有误
select avg(height) from students where gender = 1;
-- 求男生的平均身高, 包含身高是null的
select avg(ifnull(height,0)) from students where gender = 1;
说明 ifnull函数: 表示判断指定字段的值是否为null,如果为空使用自己提供的值。
7. 聚合函数的特点
聚合函数默认忽略字段为null的记录 要想列值为null的记录也参与计算,必须使用ifnull函数对null值做替换。
8. 小结
count(col): 表示求指定列的总行数
max(col): 表示求指定列的最大值
min(col): 表示求指定列的最小值
sum(col): 表示求指定列的和
avg(col): 表示求指定列的平均值
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python和C语言哪个难?零基础学哪个好?
Python和C语言哪个难?零基础学哪个好?Python上手简单有交互性强的开发环境,还有众多的第三方库,学习起来会比C/C++容易的多。C过于底层强在内存操作,功能实现起来却十分复杂并不适合新手作为上手语言。
20008
2019-08-07 15:50:54
Python入门什么程度才能找到工作?Python培训完好就业吗?
Python的火爆和就业前景,吸引了不少的学习者,那么Python入门什么程度才能找到工作?Python培训完好就业吗?就目前来说,熟练掌握Python和人工智能的技术更好就业。推荐大家报博学谷Python+人工智能在线就业班,相信大家学完整套课程找工作就不再是问题。
7260
2019-08-23 19:24:50
0基础学Python有多难?该怎么入门?
0基础学Python有多难?该怎么入门?零基础学Python并不难,因为Python是一门非常适合初学者入门的编程语言。Python语法简单明了,代码可读性很高,容易入门。但Python对代码的要求非常严谨,而对于初学者更利于养成良好的代码习惯。
5478
2020-09-29 14:33:33
JavaScript的作用及使用方法基础知识分享
JavaScript的作用及使用方法基础知识分享,学习JS需要掌握JavaScript行内式、内嵌式、外链式的3中使用方式。
4509
2021-12-24 14:49:23
MySQL数据库之关系型数据库管理系统介绍
MySQL数据库之关系型数据库管理系统介绍,数据库管理系统为管理关系型数据库而设计的软件系统,负责管理不同的数据库,而每个数据库里面会有一系列数据文件。对于程序员来讲重点是数据的增、删、改、查,必须熟练编写DQL、DML。
5743
2022-01-10 15:39:02
