Subquery란?
– Subquery는 다른 하나의 SQL 문장의 절에 NESTEDED된 SELECT 문장 이다.
– SELECT, UPDATE, DELETE, INSERT와 같은 DML문과 CREATE TABLE 또는 VIEW의 WHERE절이나 HAVING절에서 사용 된다.
– 보통 Subquery는 Main Query 이전에 한 번 실행된다.
– Subquery는 괄호로 묶어야 한다.
– 단일 행 연산자(=, >, >=, <, <=, <>, !=)와 다중 행 연산자(IN, NOT IN, ANY, ALL, EXISTS)들이 서브쿼리에 사용 된다.
– Subquery는 연산자의 오른쪽에 위치해야 한다.
서브쿼리의 유형
– 단일 행(Sing-Row) 서브쿼리 : SELECT 문장으로 부터 오직 하나의 행 만을 검색하는 질의이다.
– 다중 행(Multiple-Row) 서브쿼리 : SELECT 문장으로부터 하나 이상의 행을 검색하는 질의이다.
– 다중 열(Multiple-Column) 서브쿼리 : SELECT 문장으로부터 하나 이상의 컬럼을 검색하는 질의이다.
– FROM절상의 서브쿼리(INLINE VIEW) : FROM절상에 오는 서브쿼리로 VIEW처럼 작용 한다.
– 상관관계 서브 쿼리 : 바깥쪽 쿼리의 컬럼 중의 하나가 안쪽 서브쿼리의 조건에 이용되는 처리 방식 이다.