程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 數據庫樹結構 oracle的專用方法

數據庫樹結構 oracle的專用方法

編輯:Oracle數據庫基礎
簡單的樹型結構
關於樹的普通應用
學習了下這個函數, 用ORGINDUSTRIES的表做了個測試:
正常的樹型結構
select lpad('' '',6*(level-1))||industry,indlevel,indid,pindid
from ORGINDUSTRIES
start with indid=1
connect by pindid=prior indid
結果顯示如下
                 Indlevel  indid    pindid
        服裝與服飾               1             1             0
              服裝               2             2               1
                    女裝        3             3               2

倒型樹
下面這個例子是個”倒數”—倒過來的樹型結構
select lpad('' '',6*(level-1))||industry,indlevel,indid,pindid
from ORGINDUSTRIES
start with indid=20
connect by indid=prior pindid;
這是標准結果:
                             Indlevel indid    pindid
二手服裝                      3        20       2
      服裝                    2        2        1
            服裝與服飾        1        1        0
結論
無論正樹還是倒樹, 關鍵就在於connect by的條件.
正樹:  必須是  ‘父’= prior ‘子’
倒樹:  必須是  ‘子’= prior ‘父’

樹型結構的條件過濾
采用樹型結構的話, 如果我們想將樹上的一個分支砍掉.  將分支後面的結構都拋棄掉, 這個可以實現麽?當然可以。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved