2014. 1. 9. 01:31ㆍDatabase/ORACLE
oracle start with connect by prior 절 은 트리형태 구조이다
쇼핑몰 같은 1뎁스 2뎁스 3뎁스 4뎁스 에대한 트리구조를 쿼리로 만들어바라 그얼마나 조인을 해야하고 복잡한일인가
또한 게시판에대한 일반글과 댓글에 대한 트리구조를 만들려고 해보자.
예를들면
-Sport
-골프
-골프공
-골프채
-골프장갑
-스노우보드
-부츠
-데크
-장갑
이런구조가 있는 쇼핑몰이라고 생각하자
-Sport [ depth = 1 , no= 1 , upno=1]
-골프 [ depth = 2 , no= 2 , upno=1]
-골프공 [ depth = 3 , no= 3 , upno=2]
-골프채 [ depth = 3 , no= 4 , upno=2]
-골프장갑 [ depth = 3 , no= 5 , upno=2]
-스노우보드 [ depth = 2 , no= 6 , upno=3]
-부츠 [ depth = 3 , no= 7 , upno=3]
-데크 [ depth = 3 , no= 8 , upno=3]
-장갑 [ depth = 3 , no= 9 , upno=3]
라고 컬럼명이 depth, no , upno 가 있다고 가정 할때
depth = 3 인 골프공 ,골프채,골프장갑, 부츠, 데크, 장갑의 컬럼넘버가
depth = 2 인 골프 ,스노우보드에 속해 있다
이걸 select 해보자
SELECT NO , UPNO FROM 테이블 START WITH NO = 1 CONNECT BY PRIOR NO = UPNO ORDER BY DEPTH ASC;
'Database > ORACLE' 카테고리의 다른 글
[오라클]Oracle Function (0) | 2014.01.21 |
---|---|
Oracle MERGE INTO (Upsert) 구문 (2) | 2013.10.31 |
[Oracle TRIGGER]오라클 트리거 (0) | 2013.10.10 |
오라클 소수점 (0) | 2013.03.14 |
Oracle 내장함수 (0) | 2013.02.08 |