龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

Oracle递归查询的基本语法

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
以下的文章主要介绍的是 Oracle 递归查询Start with...Connect By子句递归查询一般用于一个表维护树形结构的实际应用。本文主要是通过Sql代码的方式来引出Oracle递归查询Start with...Connect By相

以下的文章主要介绍的是Oracle递归查询Start with...Connect By子句递归查询一般用于一个表维护树形结构的实际应用。本文主要是通过Sql代码的方式来引出Oracle递归查询Start with...Connect By相关的实际应用。

创建示例表:

Sql代码

  1. CREATE TABLE TBL_TEST  
  2. (  
  3. ID NUMBER,  
  4. NAME VARCHAR2(100 BYTE),  
  5. PID NUMBER DEFAULT 0  
  6. );   

插入测试数据:

Sql代码

  1. INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('1','10','0');  
  2. INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('2','11','1');  
  3. INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('3','20','0');  
  4. INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('4','12','1');  
  5. INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('5','121','2');  

Sql代码,从Root往树末梢递归

  1. select * from TBL_TEST  
  2. start with id=1 
  3. connect by prior id = pid 

Sql代码,从末梢往树ROOT递归

  1. select * from TBL_TEST  
  2. start with id=5 
  3. connect by prior pid = id  

以上的相关内容就是对Oracle递归查询Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用的具体介绍,望你能有所收获。

精彩图集

赞助商链接