개발노트

(다중행 서브쿼리) ALL / ANY 본문

자격증/SQLD

(다중행 서브쿼리) ALL / ANY

dev? 2024. 11. 14. 16:25
반응형

ALL : 메인 쿼리 조건이 서브쿼리의 모든 값에 대해 참이 되어야 조건이 만족됩니다.

SELECT ENAME, JOB, SAL
FROM EMP
WHERE SAL > ALL(SELECT SAL FROM EMP WHERE JOB='SALESMAN');

> 서브쿼리 결과

- ALL보다 커야 하기 때문에 서브쿼리 결과 중 제일 큰값이 기준이됨 

아래의 MAX로 대체 가능하다

SELECT ENAME, JOB, SAL
FROM EMP
WHERE SAL > (SELECT MAX(SAL) FROM EMP WHERE JOB='SALESMAN');

 

ANY: 메인 쿼리 조건이 서브쿼리의 하나 이상의 값에 대해 참이 되면 조건이 만족됩니다.

SELECT ENAME, JOB, SAL
FROM EMP
WHERE SAL > ANY(SELECT SAL FROM EMP WHERE JOB='SALESMAN');

> 서브쿼리 결과

- ANY보다 커야 하기 때문에 서브쿼리 결과 중 제일 작은 값이 기준이됨 

아래의 MIN로 대체 가능하다

SELECT ENAME, JOB, SAL
FROM EMP
WHERE SAL > (SELECT MIN(SAL) FROM EMP WHERE JOB='SALESMAN');
반응형

'자격증 > SQLD' 카테고리의 다른 글

스칼라 서브쿼리  (0) 2024.11.15
서브쿼리 (단일 / 다중 행)  (0) 2024.11.14
FULL OUTER JOIN  (0) 2024.11.14
USING절, NATURAL JOIN 쿼리 결과 특징  (0) 2024.11.12
NATURAL JOIN  (0) 2024.11.12