10-子查询

子查询返回一个值

---查询出工资和Scott一样的员工信息
select * from emp where sal in (
select sal from emp where ename='scott'
)

子查询返回一个集合

---查询出工资和10号部门任意员工一样的员工信息
select * from emp where sal in
(select sal from emp where deptno = 10);

子查询返回一张表

---查询出每个部门最低工资,和最低工资员工姓名,和该员工所在部门名称
--1.先查询出每个部门的最低工资
select deptno, min(sal) msal
from emp 
group by deptno;
--2.三表联查,得到最终结果
select t.deptno, t.msal, e.ename, d.dname
from (select deptno, min(sal) msal
      from emp 
      group by deptno) t, emp e, dept d
where t.deptno = e.deptno
and t.msal = e.sal
and e.deptno = d.deptno;

你可能感兴趣的:(数据库-oracle,数据库,oracle)