oracle的層次查詢

2021-06-21 12:28:22 字數 1335 閱讀 6026

語法:

select

列名次from 

表名次[where 

條件] start with

條件connect by prior 

當前表這段

=級聯表字段。

解釋:where

條件為可選,

start with

條件connect by prior

語句完成遞迴查詢,形成一棵樹形結構。

start with

表示開始記錄、

connect by prior

指定與當前記錄關聯是的字段關係。

**:

建立部門表,是乙個有層次的結構表,通過id與

pid(父級

id)來體現層次結構。

create   table  dep(

id      number(9)  primary  key,

name   varchar2(30),---

部門名次

pid     number(9)----

父級部門

id,具有下一級部門 )

1.從根節點開始查詢遞迴記錄

select  *  from  from   dep

where  name  like 『%

技術%』 ----

àwhere

語句可選

start  with  id  = 1

connect   by  prior  id  = pid .

start with  id = 1表示從

id=1

的記錄開始查詢,向葉子的方向遞迴,遞迴的條件是

id = pid

,當前記錄的

id等於子記錄的

pid。

2.從葉子節點開始查詢遞迴記錄

select  *  from  from   dep

where  name  like 『%

技術%』 ----

àwhere

語句可選

start  with  id  = 5

connect   by  prior  pid  = id .

oracle 層次查詢

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

oracle層次查詢

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

理解oracle層次查詢

作為一名開發和管理兼修的工程師,有時候會遇到編寫複雜的sql 此時就會查詢資料,事後又很快會忘記。記得自己每次編寫層次結構的時候都會找資料,到底誰是父親,誰是孩子,prior放在那邊代表什麼意思。今天主要把層次的語法進行分析,並用自己的理解記住自頂向下和自底向上。基本語法很簡單 select fro...