oracle学习笔记(6)_子查询

子查询

子查询的类型有:

单行子查询:不向外部返回结果,或者只返回一行结果。

多行子查询:向外部返回零行、一行或者多行结果。


1.单行子查询

查询出销售部(SALES)下面的员工姓名,工作,工资。 
SELECT ENAME,JOB,SAL FROM EMP WHERE DEPTNO=(SELECT DEPTNO FROM DEPT WHERE DNAME='SALES');

2. ANY 子查询

(1)查询出 Emp 表中比任意一个销售员(“SALESMAN”)工资低的员工姓名、工作、工资。 
SELECT ENAME,JOB,SAL FROM EMP WHERE SAL<ANY (SELECT SAL FROM EMP WHERE JOB='SALESMAN'); 
说明:<any:比子查询结果中任意的值都小,也就是说,比子查询结果中最大值还小,那么 同理>any 表示比子查询结果中最小的还大。

 (2)查询出比所有销售员的工资都高的员工姓名,工作,工资。 
SELECT ENAME,JOB,SAL FROM EMP WHERE SAL>ALL (SELECT SAL FROM EMP WHERE JOB='SALESMAN');

说明:>ALL:比子查询结果中所有值还要大,也就是说,比子查询结果中最大值还要大。 <ALL 表示比最小值还要小。

你可能感兴趣的:(oracle)