다른 테이블이 아니라 자기 자신과 JOIN하는 것을 셀프 조인(SELF JOIN)이라고 합니다. 예를 들어, 한 테이블에 "직원"과 "그 직원의 매니저 번호"가 같이 있을 때, 매니저의 진짜 이름을 찾기 위해 자기 자신의 테이블을 한 번 더 참조해야 할 때 쓰입니다.
💡 핵심 비유
가계도 혹은 족보 추적기 사원 대장에서 내 매니저 번호를 확인한 뒤, 다시 그 사원 대장(자신)을 펼쳐서 그 번호를 가진 사람의 이름을 찾는 것과 같습니다.
🧩 원리 이해하기
Script-1.sql
1
-- 직원(E1)의 매니저 사번(MGR)을 키본으로,
-- 다시 직원 테이블(E2)에 JOIN하여 매니저의 이름을 찾습니다.
SELECT E1.NAME AS EMPLOYEE_NAME,
E2.NAME AS MANAGER_NAME
FROM EMPLOYEES E1
LEFT JOIN EMPLOYEES E2
ON E1.MGR_ID = E2.EMP_ID;