日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Oracle數(shù)據(jù)庫之樹形查詢的代碼示例

Oracle數(shù)據(jù)庫樹形查詢是本文我們主要要介紹的內(nèi)容,包括樹形查詢的基本語法、構(gòu)造環(huán)境、根節(jié)點(diǎn)遍歷子節(jié)點(diǎn)以及子節(jié)點(diǎn)向根節(jié)點(diǎn)追溯,接下來就讓我們一起來了解一下這部分內(nèi)容吧。

基本語法:

 

 
 
 
  1. select...from tabename start with cond1 connect by  prior cond2 where cond2 

 

注意:

cond1是根節(jié)點(diǎn)的限定語句。

cond2是連接條件,其中prior表示上一條記錄,指該記錄的父親是上一條記錄。

cond3是過濾條件。

構(gòu)造環(huán)境:

 

 
 
 
  1. create table Family(  
  2. id integer,  
  3. parentid integer,  
  4. name varchar2(50)  
  5. )  
  6. insert into family values(0,0,'a')  
  7. insert into family values(1,0,'b')  
  8. insert into family values(2,1,'c')  
  9. insert into family values(3,1,'d')  
  10. insert into family values(4,1,'e')  
  11. insert into family values(5,1,'f') 

 

通過根節(jié)點(diǎn)遍歷子節(jié)點(diǎn)

例如:查詢父親等于1的所有子的信息

 
 
 
  1. select * from family start with parentid=1 connect by prior id=parentid 

 

通過子節(jié)點(diǎn)向根節(jié)點(diǎn)追溯

例如:

 

 
 
 
  1. select * from family start with id=5 connect by prior parentid=id 

 

注:如果報(bào)ORA-01436:用戶數(shù)據(jù)庫中的coonect by循環(huán),則將第一條數(shù)據(jù)中的parentid改為null,否則loop循環(huán)找parentid就找不到了!

擴(kuò)展:通過level 關(guān)鍵字查詢所在層次

select t.*,level from family t start with parentid=1 connect by prior id=parentid

注意:表必須用別名。

關(guān)于Oracle數(shù)據(jù)庫的樹形查詢的知識(shí)就介紹到這里了,如果您想了解更多Oracle數(shù)據(jù)庫的知識(shí),可以看一下這里的文章:http://database./oracle/,相信一定可以帶給您收獲的!

【編輯推薦】

  1. 適合初學(xué)者的MySQL學(xué)習(xí)筆記之庫操作示例
  2. 適合初學(xué)者的MySQL學(xué)習(xí)筆記之表操作示例
  3. 適合初學(xué)者的MySQL學(xué)習(xí)筆記之MySQL管理心得
  4. 適合初學(xué)者的MySQL學(xué)習(xí)筆記之MySQL查詢示例
  5. 適合初學(xué)者的MySQL學(xué)習(xí)筆記之管理員常用操作總結(jié)

網(wǎng)站欄目:Oracle數(shù)據(jù)庫之樹形查詢的代碼示例
標(biāo)題路徑:http://m.5511xx.com/article/dphgpce.html