재귀 관계(Recursive Relationship)란 무엇인가?
재귀 관계는 동일한 유형의 두 엔티티 사이에 성립하는 관계를 의미합니다. 즉, 같은 엔티티 타입에 속한 서로 다른 인스턴스(개체)들 간의 관계라고 할 수 있습니다. ER 다이어그램에서는 하나의 엔티티가 자기 자신과 연결되는 형태로 표현되며, 단항 관계(Unary Relationship) 또는 자기 참조 관계라고도 불립니다.
재귀 관계의 대표적인 예시는 다음과 같습니다.
재귀 관계의 대표적인 예제
1. 직원(Employee) 간의 감독 관계
한 명의 직원은 여러 명의 직원을 감독할 수 있습니다. 따라서 이는 직원 엔티티가 자기 자신과 맺는 재귀 관계입니다. 한 명의 직원이 여러 직원을 감독하는 구조이므로 1:N(일대다) 재귀 관계에 해당합니다.

2. 사람(Person) 간의 부모-자녀 관계
한 사람은 여러 명의 자녀를 둘 수 있으며, 그 자녀 역시 사람이라는 점에서 같은 엔티티 타입에 속합니다. 따라서 이는 사람 엔티티가 자기 자신과 맺는 재귀 관계입니다. 한 사람이 여러 사람의 부모가 될 수 있으므로 역시 1:N 재귀 관계입니다.

3. 학생(Student) 간의 학급 반장 관계
한 학생이 반장이 되어 다른 학생들을 관리·지도할 수 있습니다. 이 경우에도 학생 엔티티가 자기 자신과 관계를 맺는 것이므로 재귀 관계입니다. 한 명의 학생이 여러 학생의 반장 역할을 담당하므로 1:N 재귀 관계로 표현됩니다.

정리
재귀 관계는 조직도의 상사-부하 구조, 가족 관계, 학급 임원처럼 실제 세계에서 매우 흔하게 발견되는 패턴입니다. 데이터베이스 설계 시에는 이러한 관계를 별도의 관계 엔티티나 외래 키를 통해 적절히 모델링해야 하며, 특히 1:N 구조인지 M:N 구조인지에 따라 설계 방식이 달라진다는 점을 기억하는 것이 중요합니다.