打印本文 打印本文 关闭窗口 关闭窗口
Oracle用Start with...Connect By子句递归查询
作者:武汉SEO闵涛  文章来源:敏韬网  点击数931  更新时间:2009/4/22 22:04:23  文章录入:mintao  责任编辑:mintao
Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用。 创建示例表: CREATE TABLE TBL_TEST
(
  ID    NUMBER,
  NAME  VARCHAR2(100 BYTE),
  PID   NUMBER                                  DEFAULT 0
);   插入测试数据: 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'''');   从Root往树末梢递归 select * from TBL_TEST
 start with id=1
 connect by prior id = pid   从末梢往树ROOT递归 select * from TBL_TEST
 start with id=5
 connect by prior pid = id

打印本文 打印本文 关闭窗口 关闭窗口