[Oracle] CTE를 활용한 계층 쿼리 구현 (재귀 CTE vs CONNECT BY)
·
Database
개요오늘은 WITH CTE 구문을 활용하여 조직도 쿼리를 작성해 볼 예정입니다.Oracle에서는 사전에 미리 WITH문을 통한 결과집합을 만들어두고, 임시 테이블을 다시 사용할 수 있는 기능을 제공하는데, 해당 기능 덕분에 재사용성을 높일 수 있습니다.계층 쿼리를 작성하기 전에, CTE 구문을 먼저 설명드리겠습니다. CTE (Common Table Expression)쿼리 안에서 임시로 사용할 수 있는 이름 붙은 결과 집합입니다.마치 함수 안에서 사용하는 지역 변수처럼, 복잡한 쿼리를 읽기 쉽게 나눌 수 있습니다.CTE(Common Table Expression)는 크게 두 가지 형태로 구분됩니다. 하나는 임시 테이블처럼 활용되는 일반 CTE이고, 다른 하나는 계층 구조나 반복적인 데이터를 처리하기 위..