셀프 조인
셀프란 말에서 알 수 있듯이, 셀프 조인(SELF-JOIN)은 서로 다른 두 테이블이 아닌 동일한 한 테이블을 사용해 조인하는 방법을 말한다.
입력
SELECT a.employee_id, a.emp_name, b.employee_id, b.emp_name, a.department_id
FROM employees a,
employees b
WHERE a.employee_id < b.employee_id......①
AND a.department_id = b.department_id
AND a.department_id = 20;
결과
EMPLOYEE_ID EMP_NAME EMPLOYEE_ID EMP_NAME DEPARTMENT_ID
------------ ----------------- ----------- -------- --------------
201 Michael Hartstein 202 Pat Fay 20
사원 테이블을 A, B로 나누어 조인을 하는데, 같은 부서번호를 가진 사원 중 A 사원번호가 B 사원번호보다 작은 건을 조회하는 쿼리다. 사원 테이블에서 부서번호가 20인 건은 단 2건 뿐인데(201과 202), ①조건에 의해 결과는 1건만 추출된 점에 유념하자.
지금까지 설명한 조인 방법은 모두 내부 조인에 포함된다. 이제 외부 조인에 대해 알아 보자.