서브쿼리란 sql문장안에서 보조로 사용되는 또다른 SELECT문을 말한다.
메인쿼리 : 최종결과를 출력하는 쿼리
서브쿼리 : 중간단계 혹은 보조역할을 하는 SELECT문을 서브 쿼리라고 한다.
유형 | 설명 | 예시 |
연관성 없는 서브쿼리 | 메인과 연관성이 없는 쿼리 | SELECT count(*) FROM employees WHERE salary >= ( SELECT AVG(salary) FROM employees ); -> 메인과 연관성없는 서브쿼리 |
연관성 있는 서브쿼리 | 메인과 연관성이 있는 쿼리 | SELECT a.department_id, a.department_name FROM departments a WHERE EXISTS ( SELECT 1 FROM job_history b WHERE a.department_id = b.department_id ); |
인라인뷰 | FROM절에 사용되는 쿼리를 인라인 뷰라고 한다. FROM절 안에 |
SELECT a.employee_id, a.emp_name, b.department_id, b.department_name FROM employees a, departments b, ( SELECT AVG(c.salary) AS avg_salary FROM departments b, employees c WHERE b.parent_id = 90 AND b.department_id = c.department_id ) d WHERE a.department_id = b.department_id AND a.salary > d.avg_salary; |
'DB > ORACLE' 카테고리의 다른 글
20.[오라클]WITH절 (0) | 2024.02.14 |
---|---|
19.[오라클]계층형쿼리 (1) | 2024.02.12 |
17.[오라클]JOIN 관련 정리 (0) | 2024.02.07 |
16.[오라클]집합연산자 정리 (0) | 2024.02.07 |
15.[오라클]그룹쿼리관련 정리 (1) | 2024.02.07 |