하나의 SQL(메인쿼리)안에 다른 SQL(서브쿼리)가 들어있는 것을 말한다.
< 주의 >
서브쿼리는 메인쿼리의 칼럼 사용이 가능하다. 메인쿼리는 서브쿼리의 칼럼 사용이 불가능하다.
서브쿼리에서는 ORDER BY가 불가능하다.
1. 반환되는 데이터의 형태에 따른 서브쿼리 분류
1.1 Single Row 서브쿼리: 서브쿼리의 실행결과가 항상 1건 이하인 서브쿼리를 의미한다.
: 서브쿼리의 결과를 =, <, <=, >, >=, <>(단일 행 비교 연산자) 와 같이 사용.
1.2 Multi Row 서브쿼리: 서브쿼리의 실행결과가 항상 여러 건인 서브쿼리를 의미한다.
: 서브쿼리의 결과를 IN, ALL, ANY, SOME, EXISTS(다중 행 비교 연산자) 와 같이 사용.
1.3 Multi Column 서브쿼리: 서브쿼리의 실행결과로 여러 칼럼을 반환한다.
: 서브쿼리와 메인쿼리에서 비교하고자 하는 칼럼의 갯수와 위치가 동일 해야한다.
2. 서브쿼리 가능한 위치
1. SELECT 절 -> 스칼라 서브쿼리
2. FROM 절 -> 인라인 뷰
3. HAVING 절
4. SET 절 (UPATE)
5. VALUES 절 (INSERT)
6. ORDER BY 절
728x90
반응형
LIST
'Database > Oracle' 카테고리의 다른 글
[Download] Oracle18c XE 다운로드(설치) (0) | 2020.07.12 |
---|---|
[Oracle/SQL] count(*), count(칼럼) 차이 (0) | 2020.05.09 |
[Oracle/SQL] CREATE 명령어(ORACLE) (0) | 2020.04.19 |
[Oracle/SQL] ORDER BY 절 (0) | 2020.04.15 |
[Oracle] 오라클 SQL 무료 테스트하기 (0) | 2020.04.15 |
댓글