10.4 중첩 서브쿼리
마지막으로 살펴볼 서브쿼리는 중첩(nested) 서브쿼리로 WHERE 절에서 사용하는 서브쿼리입니다. WHERE 절에서 사용한다는 것은 조건절의 일부로 사용된다는 뜻입니다. 즉, 메인쿼리 테이블의 특정 컬럼 값과 비교한 값을 반환하는 용도로 사용됩니다. 따라서 중첩 서브쿼리는 인라인 뷰처럼 여러 개의 컬럼, 여러 개의 로우를 반환할 수 있습니다. 실제 쿼리를 살펴보도록 하죠.
쿼리 10-4 단일 행을 반환하는 중첩 서브쿼리
SELECT * FROM dept_master a WHERE a.dept_id = ( SELECT b.dept_id FROM emp_master b WHERE b.emp_name = '세종대왕' );
▲ 그림 10-4 쿼리 10-4를 실행한 결과