一、聚合函数:
1、MAX 选取列和表达式的最大值
如选取emp表中工资最高的员工的信息:
语法:查询 列值1,列值2,max(列值3) 从 表名;
语句:select empno,ename,max(sal) from emp;
演示:
2、MIN 选取列和表达式的最大值
如选取emp表中工资最低的员工的信息:
语法:查询 列值1,列值2,min(列值3) 从 表名;
语句:select empno,ename,min(sal) from emp;
演示:
3、SUM 计算列和表达式的总和
如计算emp表中各个部门的员工的工资总和:
语法:查询 列值1,sum(列值2) 从 表名 排序 列值1;
语句:select deptno,sum(sal) from emp group by deptno;
演示:
4、COUNT 计算行总和
统计emp表中的共有多少行数据
语法:查询 count(*) 从 表名;
语句:select count(*) from emp;
演示:
5、AVG 计算列和表达式的平均值
求emp表中员工的平均工资
语法:查询 avg(列值) 从 表名
语句:select avg(sal) from emp;
演示:
二、分组函数group by,having
1、group by : 按列名进行分组
如:查询各个部门的各个岗位的薪水和:
语法:查询 列值1,列值2,sum(列值3) 从 表名 排序 列值1;
语句:select deptno,job, sum(sal) from emp group by deptno ,job;
演示:
2、having 对查询后的结果进行进一步的筛选
如:查询薪水和大于5000的各个部门的职位
语法:查询 列值1,列值2,sum(列值3) 从 表名 排序 列值1,列值2, 子筛选 条件 ;
语句:select deptno,job, sum(sal) from emp group by deptno ,job having sum(sal)>5000;
演示: