안녕하세요, 이해가 잘 안되다보니 여기까지 다시 찾아오게되었네요..ㅎ
-- 데이터 상황 (10건) 계층형x
ITEM_CODE P_ITEM_CODE
TEST_C-2_002_A TEST_C-2_L017A002
TEST_C-2_002_A_1 TEST_C-2_002_A
TEST_C-2_002_A_2 TEST_C-2_002_A
TEST_C-2_002_B TEST_C-2_L017A002
TEST_C-2_002_B_1 TEST_C-2_002_B
TEST_C-2_003_A TEST_C-2_L017A003
TEST_C-2_003_B TEST_C-2_L017A003
TEST_C-2_003_C TEST_C-2_L017A003
TEST_C-2_003_D TEST_C-2_L017A003
TEST_C-2_004 TEST_C-2_L017A004
--
SELECT ITEM_CODE, P_ITEM_CODE
FROM T
--
-- 계층형 쿼리 실행시 (13건)
SELECT ITEM_CODE, P_ITEM_CODE
FROM T
CONNECT BY PRIOR ITEM_CODE = P_ITEM_CODE
TEST_C-2_002_A_1 TEST_C-2_002_A
TEST_C-2_002_A_2 TEST_C-2_002_A
TEST_C-2_002_B_1 TEST_C-2_002_B
TEST_C-2_002_A TEST_C-2_L017A002
TEST_C-2_002_A_1 TEST_C-2_002_A
TEST_C-2_002_A_2 TEST_C-2_002_A
TEST_C-2_002_B TEST_C-2_L017A002
TEST_C-2_002_B_1 TEST_C-2_002_B
TEST_C-2_003_A TEST_C-2_L017A003
TEST_C-2_003_B TEST_C-2_L017A003
TEST_C-2_003_C TEST_C-2_L017A003
TEST_C-2_003_D TEST_C-2_L017A003
TEST_C-2_004 TEST_C-2_L017A004
위처럼 꼬리가 존재하는? ITEM_CODE가 중복으로 3건 더 들어가더라구요..
P_ITEM_CODE가 연결이 안되는 코드로 존재하여 발생하는거같은데...
START WITH의 기준점을 어떻게 두어야하는지 모르겠습니다 ㅜ ㅜ
START WITH p_item_code NOT IN (SELECT item_code FROM t)
아아.. 이런식으로 서브쿼리를 사용할수있엇네요!!! 매번 감사합니다!