当前位置: 代码迷 >> Oracle管理 >> 关于SQL语句,该怎么解决
  详细解决方案

关于SQL语句,该怎么解决

热度:67   发布时间:2016-04-24 05:24:55.0
关于SQL语句
大家好,我这有个题目 查询工资为某个部门平均工资的员工的信息

我是这样写的

select deptno,empno,ename,sal,job from emp where sal in(select avg(sal) from emp group by deptno);

结果运行不出来,显示“未选定行”。我是个oracle初学者,对很多东西都不是很熟

想请教一下。谢谢!



------解决方案--------------------
select deptno,avg(sal) from emp group by deptno
------解决方案--------------------
显示“未选定行”。表示没有符合你条件的数据
------解决方案--------------------
如果只是显示部门和平均工资 3L就可以了
------解决方案--------------------
select deptno,empno,ename,sal,job from emp where sal =(select avg(sal) from emp );
这样写更简洁,显示“未选定行”,是不是因为没有符合条件的记录
select deptno,empno,ename,sal,job from emp where sal <=(select avg(sal) from emp );
看有没有结果

------解决方案--------------------
select deptno,empno,ename,sal,job from emp a,
(select deptno,avg(sal) as avgsal from emp
group by deptno) b
where a.deptno=b.deptno and a.sal=b.avgsal
  相关解决方案