Oracle递归查询示例分析
生活随笔
收集整理的這篇文章主要介紹了
Oracle递归查询示例分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Oracle遞歸查詢示例分析
start with connect by 層次查詢(Hierarchical Queries)
從頂級向下級查詢
Select ?a.areaid,a.name,a.parentid,a.levelcode
From prnbsn_area a?
Start With a.areaid = 3 Connect By Prior a.areaid=a.parentid
該查詢會查出所有的重慶子級區域
從下向上查詢
Select ?a.areaid,a.name,a.parentid,a.levelcode
From prnbsn_area a
Start With a.areaid = 78
Connect By Prior a.parentid = a.areaid
查詢三亞(78)的所有上級
start with: 表示根記錄的條件(從那條記錄開始)
connect by: 指定了父記錄行和子記錄行之間的關系,在層次查詢中,條件表達式必須使用prior操作符來指定父記錄行
如:
CONNECT BY PRIOR pid = id 或者CONNECT BY pid = PRIOR id
如果connect by 條件是一個組合條件,那么只有一個條件需要prior操作符,
如:
CONNECT BY last_name != 'King' AND PRIOR employee_id = manager_id
不過,connect by 不能包含子查詢。
prior是一個二元操作符
總結
以上是生活随笔為你收集整理的Oracle递归查询示例分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hdu 1055(贪心)
- 下一篇: poj 1230(贪心)