一、分组统计查询
分组统计操作分为两个层次:统计操作、分组操作
二、统计函数(分组函数、组函数)
常用的统计函数
count()、sum()、avg()、min()、max()
- 查询出公司的人数、平均工资、每月的总支出
select count(*) 人数,avg(sal) 平均工资,sum(sal) 总支出 from emp;
执行结果:
- 查询公司的最高与最低工资
select max(sal),min(sal) from emp;
执行结果:
- 查询出公司的平均服务年限
select avg(months_between(sysdate,hiredate)/12) from emp;
执行结果:
- 查询公司的最早雇佣日期和最后一次雇佣日期
select min(hiredate),max(hiredate) from emp;
执行结果:
- count()函数
count()函数主要功能是统计记录个数,如果表中没有数据记录则返回值为0
需要提示的是这个null和0只是在数据库的层次上,在程序执行中,null发现接受类型为整型,自动变为0;
对于count()函数有三种用法:count()、count(字段)、count(distinct 字段)
如果统计表的行数,最简单的做法就是count()
count(字段)是如果字段值为null,是不会进行统计的
如果在某一列上有重复的数据,而且并不想统计重复的数据这时候可以使用count(distinct 字段)
三、分组统计函数的操作
#前边数字是语句执行循序
4select [distinct] 分组字段 | 统计函数
1from 数据表