ORACLE的層次搜尋問題

2021-09-05 06:17:53 字數 673 閱讀 2404

今天研發的乙個同事和我討論這樣乙個問題:

公司中有多個部門和部門內的小組,如果知道乙個部門或小組的編號,是否可以直接列出該部門或小組的所有上級和所有下級。

例如:部門資訊表[deptab]

部門編號       部門名稱        上級部門

【欄位id】   【欄位dep】    【欄位pid】

1                公司             0

2               運維中心         1

3               xx中心           1

......

10               技術部           2

......

20              資料支援組      10

......

針對這個問題,我只好使用了乙個比較笨的辦法來實現

select * from deptab

start with id= 10

connect by  id = prior pid

union

select * from deptab     

start with v1= 10

connect by  prior id =  pid;

希望能提出更好的方法 -:)

oracle的層次查詢

語法 select 列名次from 表名次 where 條件 start with 條件connect by prior 當前表這段 級聯表字段。解釋 where 條件為可選,start with 條件connect by prior 語句完成遞迴查詢,形成一棵樹形結構。start with 表示開...

oracle 層次查詢

1 簡介 oracle層次化查詢是oracle特有的功能實現,主要用於返回乙個資料集,這個資料集存在樹的關係 資料集中存在乙個pid記錄著當前資料集某一條記錄的id 2 層次化查詢主要包含兩個子句,乙個start with另乙個是connect by。start with 這個子句一般用於指定層次化...

oracle層次查詢

層次查詢 hierarial retrival 1.層次查詢基本概念 層次查詢是描敘乙個樹狀結構,我們可以通過層次查詢來控制自上而下,或者自下而上的查詢樹狀資料。並且還可以確定查詢起始點 start with確定開始點 connect by確定遍歷的方向。2.層次查詢語法 select level ...