본문 바로가기
IT 이론/데이터베이스

[데이터베이스] 부질의(subquery), 중첩질의(nested query)

by 지식id 2012. 11. 30.
반응형

어떤 질의 내에서 사용되는 질의를 가리킨다.

부질의(subquery)가 존재하는 질의를 중첩질의(nested query)라고 한다.

 

부질의에서 외부질의의 애트리뷰트를 사용하지 않고 단독으로 실행 가능 할 경우 이를 비상관 부질의(uncorrelated subquery), 이런 부질의가 있는 중첩질의를 비상관 중첩질의(uncorrelated subquery)

 

부질의에서 외부질의의 애트리뷰트를 사용할 경우 이를 상관 부질의(correlated subquery), 이런 부질의가 있는 중첩질의를 상관 중첩질의(correlated subquery)

 

비상관 중첩질의 예)

select name, dno, salary from employee where dno = (select d_id from department where d_name = '인사부');

부서 이름이 '인사부'인 부서에 속한 직원의 이름, 부서번호, 봉급을 출력하라

 

상관 중첩 질의 예)

select name, dno, salary from employee e1 where salary > (select avg(salary) from employee e2 where e1.dno = e2.dno);

자신이 속한 부서의 평균봉급 보다 더 많은 봉급을 받는 직원의 이름, 부서번호, 봉급을 출력하라.

반응형

댓글