樹型表結構的查詢

2021-09-30 05:11:37 字數 501 閱讀 8853

connect   by   是結構化查詢中用到的,其基本語法是:  

select   ...   from   tablename   start   by   cond1  

connect   by   cond2  

where   cond3;  

簡單說來是將乙個樹狀結構儲存在一張表裡,比如乙個表中存在兩個字段:  

id,parentid那麼通過表示每一條記錄的parent是誰,就可以形成乙個樹狀結構。  

用上述語法的查詢可以取得這棵樹的所有記錄。  

其中cond1是根結點的限定語句,當然可以放寬限定條件,以取得多個根結點,實際就是多棵樹。  

cond2是連線條件,其中用prior表示上一條記錄,比如   connect   by   prior   id=praentid就是說上一條記錄的id是本條記錄的praentid,即本記錄的父親是上一條記錄。  

cond3是過濾條件,用於對返回的所有記錄進行過濾。

用遞迴處理樹型結構 表結構

用遞迴處理樹型結構 表結構 遞迴求城市,從小到大的,或從大到小。等依次類推得目錄樹結構 我想寫乙個函式 傳入部門id號後 馬上得到相應的 部門結構 如 輸入8得到的是市場部 東南市場 上海市 輸入9得到的是市場部 西北市場 北京市 輸入6得到的是市場部 西北市場 輸入3得到的是市場部 輸入1得到的是...

oracle 樹型查詢

1 start with 條件 connect by prior 記憶 prior 優先的 我理解為已知的.如常見的表中字段為id,pid 父類 其中有一條記錄為id 1000,pid 2000,那麼要找id的所有子類,必須去找 pid 1000的記錄,即id 1000必須是 優先的 是 已知的 故...

樹型結構的設計

最近做專案,經常用的樹型結構,對樹型表的設計有了新的理解.原來設計的樹型表結構 體現了一種遍歷的方式.用編碼控制相應的父子關係,雖然這樣也體現了關係,但在做轉移子樹時就相當麻煩了,而且邏輯關係也不清晰.這次的設計 改用父節點控制父子關係,同時提供乙個排序號,提供一種遍歷,可以增加多個字段,來擴充套件...