分组查询
场景
统计各个部门的人数情况
统计性别统计人数
按照班级统计参加比赛的人数
分组之后的结果:和具体一条数据没有关系
分组会和聚合函数一起使用
需求中包含:“每”,“各”这种,group by
group by
##统计各个部门的人数
select deptno,count(),round(avg(sal),2)
from emp
group by
deptno;
##统计各个部门的平均工资
select deptno,round(avg(sal),2)
from emp
group by
deptno;
##统计各个部门各个岗位人数
select deptno,job,count()
from emp
group by
deptno,job;
having
需求统计平均工资超过2000的部门
1)算出各个部门的平均工资
2)过滤只留下超过2000的
select
deptno,round(avg(sal),2) sal_avg
from
emp
group by
deptno;
having
sal_avg>2000;
where和having的区别
Where:过滤;分组之前的过滤;Where是对数据源进行过滤
Having:过滤;分组之后的过滤
分组查询
最新推荐文章于 2024-02-13 21:57:41 发布