MySQL-分组函数
分组函数
sum函数
SELECT SUM(`salary`) FROM employees;
简单使用
多个一起显示
select sum(`salary`) 和,AVG(`salary`) 平均,MIN(`salary`) 最低,MAX(`salary`) 最高,COUNT(`salary`) 个数 FROM employees;
将平均值保留两个小数
select sum(`salary`) 和,round(AVG(`salary`),2) 平均,MIN(`salary`) 最低,MAX(`salary`) 最高,COUNT(`salary`) 个数 FROM employees;
分组函数的特点
可以和distinct搭配实现去重的运算
SELECT SUM(DISTINCT salary) ,SUM(salary) FROM employees;
SELECT COUNT(DISTINCT salary) ,COUNT(salary) FROM employees;
count函数的详细介绍
SELECT COUNT(salary) FROM employees;
#统计行数
SELECT COUNT(*) FROM employees;
#统计1的个数 会在统计的表中加入一列1
SELECT COUNT(1) FROM employees;
#统计家教的个数 会在统计的表中加入一列家教
SELECT COUNT('家教') FROM employees;
和分组函数一同查询的字段有限制
查询公司员工工资的最大值,最小值,平均值,总和
SELECT MAX(`salary`) mx_sal,MIN(`salary`) mi_sal,ROUND(AVG(`salary`),2) ag_sal,SUM(`salary`) sm_sal
FROM `employees`
DATEDIFF()函数能够查询日期的差
select datediff(now(),'1999-04-29');
查询员工表中的最大入职时间和最小入职时间的相兰天效(DIFFRENCE)
SELECT DATEDIFF(MAX(`hiredate`),MIN(`hiredate`)) DIFFRENCE
FROM `employees`;
查询部门编号为90的员工个数
select count(*) 个数
from employees
where department_id=90;
转载请注明出处,欢迎讨论和交流!