以下的文章主要介绍的是Oracle递归查询Start with...Connect By子句递归查询一般用于一个表维护树形结构的实际应用 。本文主要是通过Sql代码的方式来引出Oracle递归查询Start with...Connect By相关的实际应用 。
创建示例表:
Sql代码
- CREATE TABLE TBL_TEST
- (
- ID NUMBER,
- NAME VARCHAR2(100 BYTE),
- PID NUMBER DEFAULT 0
- );
插入测试数据:
Sql代码
- INSERT INTO TBL_TEST(ID,NAME,PID) VALUES(1,10,0);
- INSERT INTO TBL_TEST(ID,NAME,PID) VALUES(2,11,1);
- INSERT INTO TBL_TEST(ID,NAME,PID) VALUES(3,20,0);
- INSERT INTO TBL_TEST(ID,NAME,PID) VALUES(4,12,1);
- INSERT INTO TBL_TEST(ID,NAME,PID) VALUES(5,121,2);
Sql代码,从Root往树末梢递归
- select * from TBL_TEST
- start with id=1
- connect by prior id = pid
Sql代码,从末梢往树ROOT递归
- select * from TBL_TEST
- start with id=5
- connect by prior pid = id
以上的相关内容就是对Oracle递归查询Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用的具体介绍,望你能有所收获 。