MySQL37--聚合函数
原创
©著作权归作者所有:来自51CTO博客作者分享智道的原创作品,请联系作者获取转载授权,否则将追究法律责任
聚合函数
名称
| 描述
|
AVG()
| 平均值
|
COUNT()
| 计数
|
MAX()
| 最大值
|
MIN()
| 最小值
|
SUM()
| 求和
|
COUNT(*),COUNT(1)与COUNT(column)的区别
COUNT(*)对行的数目进行计算,包含NULL值;
COUNT(column)对特定的列进行行数统计,不包含NULL值;
COUNT(1) 和COUNT(*)的结果是相同的;
如果数据表没有主键,那么COUNT(1)比COUNT(*)快;
如果数据表有主键,那么COUNT(column)比COUNT(*)快;
如果表只有一个字段,COUNT(*)最快;
-- 查询dept表中,数据的总记录数
SELECT COUNT(*) FROM dept;
SELECT COUNT(*) AS '数量' FROM dept;
-- 查询emp表中,奖金(comm)不为NULL的,员工的总数量
SELECT COUNT(comm) FROM emp;
-- 查询emp表中,职位(job)种类的总数量
SELECT COUNT(DISTINCT job) FROM emp;
-- 查询emp表中,员工的工资总和
SELECT SUM(sal) FROM emp;
-- 查询student表中,学员分数(score)总和
SELECT SUM(score) FROM student;
-- 查询emp表中,员工的平均工资
SELECT AVG(sal) FROM emp;
-- 查询student表中,学员的平均分数(score)
SELECT AVG(score) FROM student;
-- 查询student表中,最低分数(score)是多少
SELECT MIN(score) FROM student;
-- 查询emp表中,部门编号(deptno)是30号部门的,员工的最低工资(sal)是多少
SELECT MIN(sal) FROM emp WHERE deptno=30;
-- 查询student表中,学员的最高分数(score)
SELECT MAX(score) FROM student;
-- 查询emp表中,员工总数、工资总和、平均工资、最低工资、最高工资,并起别名显示
SELECT COUNT(*) 员工总数,SUM(sal) 工资总和,AVG(sal) 平均工资,
MIN(sal) 最低工资,MAX(sal) 最高工资 FROM emp;
作者:暄总-tester