728x90
반응형
728x170
■ START WITH ~ CONNECT BY PRIOR 절을 사용해 재귀 호출하는 방법을 보여준다.
▶ 예제 코드 (SQL)
CREATE TABLE MENU
(
ID INT
,PARENT_ID INT
,NAME VARCHAR(50)
);
INSERT INTO MENU VALUES (1, 0, '메뉴1');
INSERT INTO MENU VALUES (2, 0, '메뉴2');
INSERT INTO MENU VALUES (3, 1, '메뉴3');
INSERT INTO MENU VALUES (4, 1, '메뉴4');
INSERT INTO MENU VALUES (5, 1, '메뉴5');
INSERT INTO MENU VALUES (6, 5, '메뉴6');
INSERT INTO MENU VALUES (7, 2, '메뉴7');
INSERT INTO MENU VALUES (8, 2, '메뉴8');
SELECT NAME, LTRIM(SYS_CONNECT_BY_PATH(NAME, ' > '), ' > ') AS TREE_PATH
FROM MENU
START WITH PARENT_ID = 0
CONNECT BY PRIOR ID = PARENT_ID;
728x90
반응형
그리드형(광고전용)
'Database > Oracle' 카테고리의 다른 글
[DATABASE/ORACLE] DECODE 함수 : 동적 집계하기 (0) | 2015.05.11 |
---|---|
[DATABASE/ORACLE] PIVOT 함수 : 동적 집계하기 (0) | 2015.05.11 |
[DATABASE/ORACLE] 특정 기간 날짜 테이블 조회하기 (0) | 2015.05.11 |
[DATABASE/ORACLE] OPEN FOR 명령 : 동적 쿼리 실행하기 (0) | 2015.05.10 |
[DATABASE/ORACLE] EXECUTE IMMEDIATE 명령 : 동적 쿼리 실행하기 (0) | 2015.05.10 |
[DATABASE/ORACLE] CTE 재귀 호출 사용하기 (0) | 2015.05.10 |
[DATABASE/ORACLE] 페이지 단위 조회하기 (0) | 2015.05.09 |
[DATABASE/ORACLE] MERGE INTO문 사용하기 (0) | 2015.05.09 |
[DATABASE/ORACLE] 조인 업데이트 사용하기 (0) | 2015.05.09 |
[DATABASE/ORACLE] 컬럼 설명 설정하기 (0) | 2015.05.09 |
댓글을 달아 주세요