Oracle数据库之SQL分组函数
Oracle数据库之SQL分组函数
分组函数定义
和单行函数不同的是,分组函数作用于一组记录,每一组返回一个结果。这个组可以是整个表
也可以是有group by子句将表分成的多个组。
常用分组函数
● COUNT({*/[distinct/all]express}):
返回记录数,这里的express为赋值为非空,*表示所有被选择的记录,包括重复的和NULL
的,distinct表示去掉重复的,all表示所有的但是不包括NULL的。
[sql]
select count(all mgr) from emp;--13
select count(*) from emp;--14
select count(distinct mgr) from emp;--6
● MAX、MIN(参数和上面一样)
表达式的最大值、最小值忽略空值
[sql]
select max(distinct mgr) from emp;
● AVG
返回平均值,忽略空值,因其空值不能用于计算
[sql]
select avg(sal) from emp;
● SUM:求和
[sql]
select sum(sal) from emp;
这些分组函数在实际应用中是非常有用的!可以进行相关数据的统计工作!