对oracle数据库系统表emp的查询:显示平均工资低于2000的部门号、平均工资和最高工资的SQL语句怎么写?

2025-03-22 21:47:16
推荐回答(3个)
回答(1):

select deptNo from emp group by deptNo having avg(salary)<2000
因为where子句不能使用聚合函数,所以可以分组,然后用having来实现
deptNo代表部门号,salary代表工资,看看和您表中的是否一致。不一致修改它们即可,下面也是。
select avg(salary) from emp 查询平均工资
select max(salary) from emp 查询最高工资

回答(2):

select empno ,avg(salary) ,max(salary)
from emp
group by empno
having avg(salary) < 2000

回答(3):

select deptno,sav(sal), max(sal) from emp
where sal>2000;