oracle 查工资大于本部门平均工资的员工信息两种方法

查工资大于本部门平均工资的员工信息两种方法
[code]
第一种方法:
select * from scott.emp e where sal > (select avg(sal) from scott.emp where e.deptno=deptno)

第二种方法:
select * from scott.emp e1,(select avg(sal) sals,deptno from scott.emp group by deptno) e2 where sal >sals and e1.deptno=e2.deptno
[/code]

值得注意的是在第二种方法的时候我们一定要查出deptno出来,因为我们要和后面的比较的。第一种方法的效率要比第一种的效率要高的多。
[color=red]
(select avg(sal) sals,deptno from scott.emp group by deptno)
[/color]

你可能感兴趣的:(oracle)