在Oracle递归查询中,我们经常用到的是Start with…Connect By子句来对Oracle递归查询一般的情况下,是用于相关表维护树形的结构应用。以下就是文章的相关内容的具体介绍,望你浏览后会对你有所帮助。
创建示例表:
Sql代码
CREATETABLETBL_TEST ( IDNUMBER, NAMEVARCHAR2(100BYTE), PIDNUMBERDEFAULT0 );
插入测试数据:
Sql代码
INSERTINTOTBL_TEST(ID,NAME,PID)VALUES('1','10','0'); INSERTINTOTBL_TEST(ID,NAME,PID)VALUES('2','11','1'); INSERTINTOTBL_TEST(ID,NAME,PID)VALUES('3','20','0'); INSERTINTOTBL_TEST(ID,NAME,PID)VALUES('4','12','1'); INSERTINTOTBL_TEST(ID,NAME,PID)VALUES('5','121','2');
在Oracle递归查询中我们要用到Sql代码
从Root往树末梢递归
select*fromTBL_TEST startwithid=1 connectbypriorid=pid
Sql代码
从末梢往树ROOT递归
select*fromTBL_TEST startwithid=5 connectbypriorpid=id
相关文章
标签:Oracle