查询比所在职位平均工资高的员工姓名,职位。
select outertab.ename,outertab.job
from emp outertab
where outertab.sal>(select avg(sal)
from emp
where outertab.job=job)
查询工资为其部门最低工资的员工编号,姓名,工资。
select aa.empno,aa.ename,aa.sal
from emp aa
where aa.sal=(select min(sal)
from emp
where aa.deptno=deptno)
查询哪些员工是经理
select *
from emp e
where 0<(select count(empno)
from emp
where e.empno=mgr)
查询所有雇员编号,名字和部门名字。
select emp.deptno,emp.ename,(select dname
from dept
where emp.deptno=deptno)
from emp
查询哪些员工不是经理。
select *
from emp e
where 0=(select count(empno)
from emp
where e.empno=mgr)
查询每个部门工资最低的两个员工编号,姓名,工资。
select aa.empno,aa.ename,aa.job
from emp aa
where 1>=(select count(empno)
from emp
where aa.sal>sal
and aa.deptno=deptno)
列出至少有一个雇员的所有部门名称。
select dname
from dept
where exist (select count(*)
from emp
where dept.deptno=emp.deptno
GROUP BY deptno
having count(*)>=1)
列出一个雇员都没有的所有部门名称。
select d.dname
from dept d
where not exists(select count(*)
from emp
where deptno=d.deptno
group by deptno
having count(*)>=1)
查询薪水多于他所在部门平均薪水的雇员名字,部门号。
select e.ename,e.deptno
from emp e
where sal >(select avg(sal)
from emp
where e.deptno=deptno)
查询员工姓名和直接上级的名字。
select e.ename, (select ename
from emp
where empno=e.mgr)
from emp e
查询每个部门工资最高的员工姓名,工资。
select e.ename, e.sal
from emp e
where e.sal in (select max(sal)
from emp
where deptno=e.deptno
group by deptno )
查询每个部门工资前两名高的员工姓名,工资。
select e.ename,e.job
from emp e
where 2>(select count(empno)
from emp
where e.deptno=deptno
and sal>e.sal)