[MSSQL] CTE 를 이용한 재귀호출
Database/MSSQL / 2010. 10. 1. 01:51
위와 같이 Department 테이블에 상위 부서에 대한 정보를 FK 로 갖는 경우가 있을 것 입니다.
이러한 경우 자신의 부서를 포함하여 상위부서를 찾으려면 단순한 쿼리문으로는 불가능 할 것입니다.
오라클에서는 아래와 같이 재귀호출을 사용할 것 입니다.
하지만 MSSQL 에서는 CTE (Common Table Expressions) 을 이용하여 쿼리문을 작성할 수 있습니다.
WITH 절을 이용하여 CTE 를 선언한 이후에 사용하는 방식으로 재귀 호출을 위해 나온 것은 아니지만 재귀 호출이 필요할 때 사용할 수 있는 기능 중에 하나입니다.
새벽에 정리하다보니 좀 내용이 이상한 것 같습니다... 나중에 정신이 돌아온다면... 보완을 해야겠습니다.