MySQL-分组函数

分组函数

image

sum函数

SELECT SUM(`salary`) FROM employees;

image

简单使用

image

多个一起显示

select sum(`salary`) 和,AVG(`salary`) 平均,MIN(`salary`) 最低,MAX(`salary`) 最高,COUNT(`salary`) 个数 FROM employees;

image

将平均值保留两个小数

select sum(`salary`) 和,round(AVG(`salary`),2) 平均,MIN(`salary`) 最低,MAX(`salary`) 最高,COUNT(`salary`) 个数 FROM employees;

image

分组函数的特点

image

可以和distinct搭配实现去重的运算

SELECT SUM(DISTINCT salary) ,SUM(salary) FROM employees;

image

SELECT COUNT(DISTINCT salary) ,COUNT(salary) FROM employees;

image

count函数的详细介绍

SELECT COUNT(salary) FROM employees;

#统计行数
SELECT COUNT(*) FROM employees; 

#统计1的个数 会在统计的表中加入一列1
SELECT COUNT(1) FROM employees;  

#统计家教的个数 会在统计的表中加入一列家教
SELECT COUNT('家教') FROM employees;  

image

image

和分组函数一同查询的字段有限制

image

查询公司员工工资的最大值,最小值,平均值,总和

SELECT MAX(`salary`) mx_sal,MIN(`salary`) mi_sal,ROUND(AVG(`salary`),2) ag_sal,SUM(`salary`) sm_sal
FROM `employees`

image

DATEDIFF()函数能够查询日期的差

select datediff(now(),'1999-04-29');

image

查询员工表中的最大入职时间和最小入职时间的相兰天效(DIFFRENCE)

SELECT DATEDIFF(MAX(`hiredate`),MIN(`hiredate`)) DIFFRENCE
FROM `employees`;

image

查询部门编号为90的员工个数

select count(*) 个数
from employees
where department_id=90;

image

posted @ 2022-05-22 21:25  司砚章  阅读(56)  评论(0编辑  收藏  举报