九、多行子查詢


子查詢的返回結果是多行數據. 此時, 不能再使用普通的比較運算符了.

多行記錄比較運算符:

一、any

  • Ø ANY: 跟結果中的任何一個數據進行比較

查詢工資低於任何一個“CLERK”的工資的雇員信息

select * from emp where sal<ANY(select sal from emp where job='CLERK') and job<>'CLERK';

【注意】any操作符后接多行子查詢返回列表中的每一個值。

<any為小於最大的

>any為大於最小的。

二、all

  • Ø ALL: 跟結果中的所有數據進行比較

查詢工資比所有的“SALESMAN”都高的雇員的編號、名字和工資

select empno, ename, sal

from emp

where sal>ALL(select sal from emp where job='SALESMAN');

【注意】all操作符比較子查詢返回列表中的每一個值。

<all為小於最小的

>all為大於最大的

=all無意義,一般不寫。

三、in

 

  • Ø IN: 等於結果中的任何一個

查詢部門20中職務同部門10的雇員一樣的雇員信息

select *

from emp

where job in (select job from emp where deptno=10)

and deptno=20;

select *

from emp

where job =any (select job from emp where deptno=10)

and deptno=20;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM