Data Base_Oracle/SQL

SQL_Sub Query Pattern_Inline View

pathas 2020. 1. 7. 23:06

Sub Query Pattern

Inline View

View를 생성하지 않고 바로 작성해서 사용하는 방식
from 뒤에 서브쿼리가 나오는 패턴

튜닝 기법 중 하나

※ 튜닝 : 테이블에 저장된 데이터가 많아도 원하는
데이터를 빠르게 화면에 출력할 수 있도록 하는 것

§ 형식

▷ [ SQL> ~ from ( 불러올 데이터만 검색이 되도록 작성 ) 테이블 별칭 ]

# 예제

{ 문제 - Inner Join }
▷ 업무가 MANAGER인 사원의 이름, 업무, 부서명, 근무지를 출력

 

{ 풀이 - 일반적인 방법 }
▶ [ SQL> select ename, job, dname, loc from emp e, dept d
where e.deptno=d.deptno and e.job='MANAGER'; ]

ENAME JOB DNAME LOC
JONES MANAGER RESEARCH DALLAS
BLAKE MANAGER SALES CHICAGO
CLARK MANAGER ACCOUNTING NEW YORK

{ 풀이 - Inline View }

※ 메모리에 데이터를 올려서 작업할 때
처음부터 화면에 출력할 내용만 따로 검색해서 올리는 방법

 

▶ [ SQL> select ename, job, dname, loc from (
select ename, job, deptno from emp where job='MANAGER'
) e, dept d
where e.deptno=d.deptno; ]

 

※ 데이터를 처음부터 다 불러온 뒤에 MANAGER를 찾는 방법이 아니라
MANAGER인 데이터들을 먼저 불러와서 검색
→ 효율적인 검색 가능


서브 쿼리 활용이라고도 볼 수 있는 Inline View에 대해 살펴보았습니다.

인라인 뷰를 사용하면 조건에 맞는 데이터를 우선적으로 조회하기 때문에

조건에 맞는 데이터를 찾기 위해 모든 데이터를 불러오지 않아도 됩니다.