[SQL] Self Join, 같은 테이블 안에서 다른 행을 참조할 때

Unit·2025년 6월 22일

SQL

목록 보기
22/59

같은 테이블 안의 데이터를 서로 연결해야 하는 경우가 있습니다.
대표적인 예로는 상사와 직원 관계를 들 수 있습니다.

아래는 employees 테이블의 예시입니다.


employee_idnamemanager_id
1AliceNULL
2Bob1
3Carol1
4David2

각 직원의 상사 이름을 함께 조회하려면,
같은 테이블을 두 번 불러 조인해야 합니다.

SELECT
  e.employee_id
, e.name AS employee_name
, m.name AS manager_name
FROM employees e
LEFT JOIN employees m
  ON e.manager_id = m.employee_id;

이처럼 같은 테이블을 두 번 불러 서로 조인하는 방식이 Self Join입니다.


정리

✔️ Self Join은 같은 테이블 안에서 관계를 연결하거나 비교해야 할 때 사용하는 조인 방식입니다.
✔️ 직원–상사 관계처럼 구조적으로 연결된 데이터를 다룰 때 활용할 수 있습니다.

profile
협업, 유지보수, 최적화를 고려한 데이터 실무 팁을 정리합니다.

0개의 댓글