抖音号出售网站,澧县住房和城乡建设局网站,广东省网站备案要多久,免费网络推广工具关于分组汇总
1.概述 将查询结果按某一列或者多列的值分组。 group by子句 分组后聚合函数将作用于每一个组#xff0c;即每一组都有一个函数值。 语法 select 字段列表
from 表名
where 筛选条件
group by 分组的字段;select 字段列表
from 表名
group by 分组的字段
hav…关于分组汇总
1.概述 将查询结果按某一列或者多列的值分组。 group by子句 分组后聚合函数将作用于每一个组即每一组都有一个函数值。 语法 select 字段列表
from 表名
where 筛选条件
group by 分组的字段;select 字段列表
from 表名
group by 分组的字段
having 筛选条件;2. having 与 where having是在分组后对数据进行过滤即作用于组选择满足条件的组。 where是在分组前对数据进行过滤即作用于基本表选择满足条件的元组。 在查询过程中执行顺序 from where group含聚合 having order selecthaving后面可以使用聚合函数where后面不可以使用聚合函数。
3.其它 分组可以按单个字段也可以按多个字段。 可以搭配着排序使用。 一般来讲能用分组前筛选的尽量使用分组前筛选提高效率。
基本使用
1.简单分组 查询工种编号和该工种的员工人数 num select job_id, count(*) as num
from employees
group by job_id;查询工种编号和该工种的平均工资 avg_salary去掉小数部分 select job_id, truncate(avg(salary), 0) as avg_salary
from employees
group by job_id;2.分组前筛选where 查询部门编号和该部分员工邮箱中包含 a 字符的最高工资 select department_id, max(salary)
from employees
where email like %a%
group by department_id;查询管理者编号以及该领导手下有提成的员工的平均工资去掉小数avg_salary select manager_id, truncate(avg(salary), 0) as avg_salary
from employees
where commission_pct is not null
group by manager_id;3.分组后筛选having 查询部门编号和该部门的员工人数 num只要 num5 的数据 select department_id, count(*) as num
from employees
group by department_id
having num 5;查询管理者编号和该领导手下员工的最低工资 min_salary只要 min_salary5000 的数据 select manager_id, min(salary) as min_salary
from employees
group by manager_id
having min_salary 5000;查询管理者编号和该领导手下员工的最低工资 min_salary只要 min_salary 6000 的数据没有管理者的员工不计算在内 select manager_id, min(salary) as min_salary
from employees
where manager_id is not null
group by manager_id
having min_salary 6000;4.添加排序 查询工种编号以及该工种下员工工资的最大值最小值平均值总和并按工种编号降序排序 select job_id, max(salary), min(salary), avg(salary), sum(salary)
from employees
group by job_id
order by job_id desc;查询工种编号和该工种有提成的员工的最高工资 max_salary只要 max_salary6000 的数据对结果按 max_salary 升序排序 select job_id, max(salary) as max_salary
from employees
where commission_pct is not null
group by job_id
having max_salary 6000
order by max_salary;5.按多个字段分组 查询部门编号、工种编号和该部门和工种的员工的最低工资 min_salary并按最低工资降序排序 select department_id, job_id, min(salary) as min_salary
from employees
group by department_id, job_id
order by min_salary desc;一代人终将老去但总有人正年轻。 —— 刺猬乐队《火车驶向云外梦安魂于九霄》