-
05. 테이블 조인 ( TABLE JOIN, INNER VIEW ) [Database]Database/Oracle 2016. 10. 7. 23:47반응형
테이블 조인 ( TABLE JOIN )
- 테이블간 Primary key - Forieign Key로 연결해 관련정보 들을 가져올 수 있습니다.
- 각 테이블은 관련 정보만 담아 두기 때문에 테이블 끼리 관계형성을 해두어
관련된 여러 정보를 한번에 가져온다.
사용법
SELECT [COLUMN]
FROM [TABLE A]
, [TABLE B]
WHERE A.PK = B.FK
AND [CONDITIONS]
예> ( HR 계정 )
위치 ID 가 1700 인 부서에서 근무하는 사원들의
LAST_NAME, 부서 번호 및 JOB_ID 를 조회한다.
SELECT E.LAST_NAME
, E.DEPARTMENT_ID
, E.JOB_ID
FROM EMPLOYEES E
, DEPARTMENTS D
, LOCATIONS L
WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID
AND D.LOCATION_ID = L.LOCATION_ID
AND L.LOCATION_ID = 1700
;
INNER VIEW
- FROM 절에서 조인을 해서 사용 하는것
- JOIN만으로 풀리지 않는 문제를 처리할 수 있다.
사용법
SELECT [COLUMN]
FROM [ TABLE A ]
, (
SELECT ....
FROM ...
WHERE ...
) B
WHERE A.PK = B.PK
AND [CONTITIONS]
예> ( HR 계정 )
LAST_NAME 이 'Kochhar' 인 사원과 동일한 연봉 및 커미션을 버는 사원들의
LAST_NAME, 부서 번호 및 연봉을 조회한다.
SELECT E.LAST_NAME
, E.DEPARTMENT_ID
, E.SALARY
FROM EMPLOYEES E
, (
SELECT SALARY
, NVL(COMMISSION_PCT, 0) COMMISSION_PCT
FROM EMPLOYEES
WHERE LAST_NAME = 'Kochhar'
) K
WHERE E.SALARY = K.SALARY
AND K.COMMISSION_PCT = NVL(E.COMMISSION_PCT, 0)
AND E.LAST_NAME != 'Kochhar'
;
반응형'Database > Oracle' 카테고리의 다른 글
06-2. 데이터 ( 수정, 삭제 ) [Database] (0) 2016.10.08 06-1. 데이터 ( 삽입, 복사 ) [Database] (0) 2016.10.08 04. 서브 쿼리 ( SUBQUERY ) [Datebase] (0) 2016.10.07 03. 그룹함수 ( GROUP, HAVING ) [Database] (0) 2016.09.20 02. Data(데이터) (데이터 정렬, 필터링, WHERE) [Database] (0) 2016.09.20