mysql--聚合和分组

聚合函数是SQL语句当中对一批数据进行数学运算所使用的函数,常用的聚合函数包括:
1#
count:返回结果集中行的数目/count:总记录数,总条数
selet count() from score ----------count() 求查询表的总记录数(总条数)
select count(列名) from score;
求出非空值的总条数
select count (8) from score --括号中的数字随便填的,代表求表的总条数
2#
sum : 返回结果集中所有值的总和/ 求和
select sum(列名) from 列名 —sum(列名),进行求和统计

3#
avg:返回结果集中所有值的平均数 / 求平均值
select avg(l列名) from 列名;

4#
min : 返回结果集中所有值的最小值
selet min(列名) from 列名;

5#
max : 返回结果集合中所有值的最大值 / 求大值
select max(列名) from 列名;

分组查询:
分组查询使用GROUP BY 关键字队列进行分组,通常放置于where条件之后。如果需要对分组结果进行过滤,则不能再使用where条件,而应该使用HAVING关键字进行条件过滤。比如我们查询学生的所有课程成绩的平均分高于60分的学生姓名,则可以使用如下SQL语句:
select 学生表.学生姓名, AVG(考试成绩) from 学生表,成绩表 where 学生表. 学生编号 = 成绩表.学生编号 group by 学生表. 学生姓名 having avg (考试成绩) >=60;
WHERE 子句:
从数据源中去掉不符合其搜索条件的数据
GROUP BY 子句:
搜索数据行到各个组中,统计函数为各个组计算统计值,每个组输出一行数据
HAVING 子句:
从分组计算结果中进行过滤,去掉不符合其组搜索条件的各组数据行

分组查询和聚合函数配套使用:
求学生表中 男生人数,女生的人数
select sex,count(sex),max(age) from student group by sex having sex =‘男’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值