Old/Oracle

10_SubQuery

깨꾹2 2018. 10. 31. 13:53

SubQuery : 쿼리문 안에 쿼리문이 들어가 있는 쿼리문을 말한다.


서브쿼리의 종류

- 서브쿼리가 어느 절에 작성되느냐에 따라서 나뉘어 진다


1.) 스칼라 서브쿼리 : SLECT절에 작성됨


2.)인라인 뷰 서브쿼리 : FROM절에 작성됨


3.)기타 : WHERE절에 작성됨


예를 들어 emp테이블에서 deptname = sales인 사람의 ename, job, hiredate를 구하고 싶다면 어떻게 해야할까?(emp테이블과 dept테이블은 공통으로 deptno를 갖고 있음)



우선 sales를 가진 사람의 deptno를 구할 필요가 있다


dept테이블에서 deptname = 'sales' 인 deptno를 찾는 쿼리문


deptno = 1을 얻음




얻은 deptno를 가지고


emp테이블에서 deptno=1인 사람의 ename, job, hiredate룰 찾는 쿼리문






이것을 한번에 처리할 수 있도록 도와주는것이 서브쿼리문으로 위의 2개의 쿼리문을 하나의 쿼리문으로 처리할 수 있게 해준다.