더북(TheBook)

① 일반 조인

입력

    SELECT a.department_id, a.department_name, b.job_id, b.department_id
      FROM departments a,
           job_history b
     WHERE a.department_id = b.department_id;

결과

    DEPARTMENT_ID DEPARTMENT_NAME   JOB_ID      DEPARTMENT_ID
    ------------- ----------------- ----------- ------------
    20            마케팅             MK_REP      20
    50            배송부             ST_CLERK    50
    50            배송부             ST_CLERK    50
    60            IT                 IT_PROG     60
    80            영업부             SA_MAN      80
    80            영업부             SA_REP      80
    90            기획부             AC_ACCOUNT  90
    90            기획부             AD_ASST     90
    110           경리부             AC_MGR     110
    110           경리부             AC_ACCOUNT 110

    10개의 행이 선택됨.

이 쿼리는 부서와 job_history 테이블을 부서번호 값을 조건으로 조인한 결과다. 따라서 job_hisotry에 없는 부서는 조회되지 않았다. 그런데 job_hisotry 테이블에는 없더라도 부서 테이블에 있는 모든 부서를 같이 보고 싶다면 어떻게 해야 할까? 바로 이때 다음과 같이 외부 조인을 사용한다.