當表自查詢的時候,就基本會用到遞迴的查詢
比如乙個員工表
主鍵 名字 職位 上級id 部門id
id name zhiwei sid y100
1000 張三 經理 0 y100
1001 李四 組長 1000 y100
1002 王五 員工 1001 y100
1003 趙六 員工 1001 y100
像這張表就會用到自查詢,
有自查詢的表的話,基本會用到遞迴查詢
比如我要查詢部門id為「y100」的,張三經理帶領的這個團隊底下所有的員工.
select * from employees t start with t.id='1000'
connect by prior t.id = t.sid
Oracle中的遞迴查詢
我們假設有如下一張機構表 org 字段型別 欄位名稱 字段描述 number 16 id 機構id number 16 parent id 父機構id varchar2 100 name 機構名稱 number 1 enable 是否啟用,1表示啟用,0表示停用 表中有如下幾行資料 id paren...
oracle中的遞迴查詢
oracle遞迴查詢 oracle中start by prior子句用法 connect by 是結構化查詢中用到的,其基本語法是 select from tablename start with 條件1 connect by 條件2 where 條件3 例 select from table st...
Oracle中遞迴查詢
表結構示例 示例資料 oracle當中的 connect by 是層次查詢子句,一般用於樹狀或者層次結果集的查詢。例如家族關係 組織管理等層次關係。每行資料都是按層次順序檢索,並規定將表中的資料連入樹形結構的關係中。select a.level,connect by isleaf from node...