개발/Oracle

[Oracle] 서브 쿼리

뉴NEW 2022. 10. 11. 11:07

< 서브 쿼리 >

- 서브쿼리: 쿼리문 내부에 기술한 쿼리문

- 메인쿼리: 쿼리문 외부에 기술한 쿼리문

- 일반적으로 메인쿼리가 서브쿼리를 감싸고 있는 형태의 쿼리문

1. 단일행 서브쿼리

- 서브쿼리의 겨로가가 1개인 경우

- 연산자:>, >=, <, <=, =, <>

2. 다중행 서브쿼리

- 서브쿼리의 결과가 2개 이상인 경우

- 연산자: in(=any), not in, any(some), all

 

(1) 다중행 서브쿼리에서 anyall의 사용 방법

1) any(some): 서브쿼리의 여러 결과 중에서 한 가지만 만족해도 결과를 출력하는 경우

 - < any : 서브쿼리의 여러 결과 중에서 최댓값보다 작은 값을 출력

 - > any : 서브쿼리의 여러 결과 중에서 최솟값보다 큰 값을 출력

 

2) all: 서브쿼리의 여러 결과를 모두 만족해야 결과를 출력하는 경우

 - < all : 서브쿼리의 여러 결과 중에서 최솟값보다 작은 값을 출력

 - > all : 서브쿼리의 여러 결과 중에서 최댓값보다 큰 값을 출력