常用的聚合函数有 avg、sum、max、min、count等等,它们的用法非常简单,在这里不再单独介绍。
1、聚合函数作子查询
我们常常用mysql作聚合查询,例如:select max(id) as notdog from student where lover is not null;
但是我们像获得max(id)下的完整信息该怎么办呢,这时候可以嵌套查询,即select * from student where id=(select min(id) from student where lover is not null);
这是聚合函数作子查询较为简单的情况,但是原理大致如此,更复杂的情况可以此类推。
2、聚合与分组
按照一定的条件对数据进行分组,然后进行聚合,例如:
查询男女生总数
select gender as 性别,count(*) from students group by gender;
这是聚合分组较为简单的情况,更复杂的情况可以此类推。
3、分组后的条件查询
例如我想查刚刚聚合后的女生有多少,即select gender as 性别,count(*) from students group
by gender having gender=0;
having后面的条件运算符与where的相同,但是where是对from后面指定的表进行数据筛选,属于对原始数据的筛选,having是对group by的结果进行筛选。
本文介绍了聚合函数如avg、sum、max、min、count在数据库查询中的使用,特别是作为子查询获取完整信息的方法。通过示例展示了如何进行分组聚合,如查询男女生总数,并解释了having关键字在分组后条件查询中的作用,与where子句的区别。

1966

被折叠的 条评论
为什么被折叠?



