계층별 쿼리를 역순으로 ROOT에서 CHILD가 아니라 CHILD를 포함한 상위노드를 찾는 쿼리를 짜고 싶습니다.
START WITH에서 하위노드를 IN으로 주면 원하는 결과가 나오긴 하는데요.
근데 이때 SYS_CONNECT_BY_PATH와 LEVEL이 역순으로 나오는게 문제네요.
해당 그룹권한에 포함된 메뉴들을 조회하는 쿼리입니다.
SELECT
LEVEL AS LVL,
MENU_CODE,
MENU_NAME,
REPLACE(SYS_CONNECT_BY_PATH(MENU_NAME, ' > '), '> ROOT > ', '') MENU_PATH,
MENU_SEQ,
PARENT_MENU_CODE,
MENU_URL
FROM 메뉴 X
CONNECT BY MENU_CODE = PRIOR PARENT_MENU_CODE
START WITH MENU_CODE IN (SELECT MENU_CODE
FROM 권한
WHERE Y.AUTH_GROUP = 'NORMAL')
일반적으로 특정 권한의 메뉴를 상위구조를 포함해서 가져올때 어떻게 구현하시나요??
|