聚合函数
-
COUNT函数---统计个数
SELECT COUNT(*) AS N'员工数量' FROM EMP;
-
MAX函数---求最大值
SELECT MAN(SALARY) FROM EMP;
-
MIN函数---求最小值
SELECT MIN(SALARY) FROM EMP;
-
SUM函数---求和
SELECT SUM(SALARY) FROM EMP;
-
AVG函数---求平均值
SELECT AVG(SALARY) FROM EMP;
-
什么是聚合函数
查询时需要做一些数据统计,比如:查询职员表中各部门职员的平均薪水,各部门的员工人数。当需要统计的数据并不能在职员表里只管列出,而是需要根据现有的数据计算得到结果,这种功能可以使用聚合函数来实现,即:将表的全部书库划分为几组数据,每组数据统计出一个结果。
因为是多行数据参与运算返回一行结果,也称作分组函数、多行函数、集合函数。用到的关键字:
GROUP BY 按什么分组
HAVING 进一步限制分组结果
-
MAN和MIN
用来取得列或者表达式的最大、最小值。可以用来统计任何数据类型,包括数字、字符和日期。
示例:获取机构下的最高薪水和最低薪水,参数是数字
SELECT MAN(SAL)MAN_SAL,MIN(SAL)MIN_SAL FROM EMP;
计算最早和最晚的入职时间,参数是日期
SELECT MAN(DIREDATE)MAN_HIRE,MIN(HIREDATE)MIN_HIRE FROM EMP;
-
AVG和SUM
AVG和SUM函数用来统计列或表达式的平均值和和值,这两个函数只能操作数字类型,并忽略NULL值。
SELECT AVG(SAL)AVG_SAL,SUM(SAL)SUM_SAL FROM EMP;
-
COUNT
COUNT函数用来计算表中的记录条数,他同样忽略NULL值。
示例:获取职员表中一共有多少名职员记录
SELECT COUNT(*)TOTAL_NUM FROM EMP;
获得职员表中有多少人是有职位的(忽略没有职位的员工记录)
SELECT COUNT(JOB)TOTAL_JOB FROM EMP;
-
聚合函数对控制的处理
聚合函数忽略NULL值。即当EMP表中的某列有NULL值。
示例:某新入职员工没有薪水,比较两条语句的结果
SELECT AVG(SAL) AVG_SAL FROM EMP;
SELECT AVG(ISNULL(SAL,0.0)) AVG_SAL FROM EMP;
网友评论