当前位置:Gxlcms > 数据库问题 > Oracle的查询-分组查询

Oracle的查询-分组查询

时间:2021-07-01 10:21:17 帮助过:24人阅读

查询出每个部门的平均工资 select e.deptno,avg(e.sal) from emp e group by e.deptno;

分组查询中,出现在 group by 后面的原始列,才能出现在 select 后面

没有出现在 group by 后面的原始列 ,想在 select 后边出现必须加上聚合函数


 

 

--查询出平均工资高于2000的部门
select e.deptno,avg(e.sal)
from emp e
group by e.deptno
having avg(e.sal)>2000;

所有条件都不能使用别名来判断

 

where 是过滤分组前的数据,having 是过滤分组后的数据

where 必须在 group by 之前,having 在 group by 之后


 

 

--查询出每个部门工资高于800的员工的平均工资
--然后再查询出平均工资高于2000的部门
select e.deptno,avg(e.sal)
from emp e
where e.sal>800
group by e.deptno
having avg(e.sal)>2000;

 

Oracle的查询-分组查询

标签:pre   查询   工资   font   rac   HERE   条件   sele   dep   

人气教程排行