Outer Join 정리
Outer Join 이란?
- Equi Join은 조인을 생성하려는 두 개의 테이블의 한쪽 컬럼에서 값이 없다면 테이터를 반환하지 못한다.
- 동일 조건에서 조인 조건을 만족하는 값이 없는 행들을 조회하기 위해 Outer Join을 사용 한다.
- Outer Join 연산자는 "(+)" 이다.
- 조인시 값이 없는 조인측에 "(+)"를 위치 시킨다.
- Outer Join 연산자는 표현식의 한 편에만 올 수 있다.
LEFT OUTER JOIN
LEFT OUTERL JOIN은 오른쪽 테이블(아래 예제에서 emp테이블)에 조인시킬 컬럼의 값이 없는 경우 사용한다.
SELECT DISTINCT(e.deptno), d.deptno
FROM dept d
LEFT OUTER JOIN emp e
ON d.deptno = e.deptno;
RIGHT OUTER JOIN
RIGHT OUTERL JOIN은 왼쪽 테이블(아래 예제에서 emp테이블)에 조인시킬 컬럼의 값이 없는 경우 사용한다.
SELECT DISTINCT(e.deptno), d.deptno
FROM emp e
RIGHT OUTER JOIN dept d
ON e.deptno = d.deptno;
FULL OUTER JOIN
FULL OUTERL JOIN은 양쪽 테이블 모두 Outer Join걸어야 하는 경우 사용 한다.
SELECT DISTINCT(e.deptno), d.deptno
FROM emp e
FULL OUTER JOIN dept d
ON e.deptno = d.deptno;
출처 : http://www.gurubee.net/lecture/1021