码迷,mamicode.com
首页 > 数据库 > 详细

《oracle数据库递归查询以及给结果赋初值》

时间:2014-07-28 16:58:05      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:数据   io   art   ar   数据库   sql   oracle   table   

CR  CREATE TABLE USERS.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‘);
  二、格式
  Select * from …. Where [结果过滤条件语句]
  Start with  [and起始条件过滤语句]
  Connect by prior [and中间记录过滤条件语句]
  三、查找所有下级
  select * from tbl_test start with id=1 connect by prior id=pid
  注意:此sql能查找id=1的数据的所有下级,写sql语句时要注意,因为是从id开始查找下级,所以connect by prior 子句的条件是id=pid
  四、查找所有上级
  select * from tbl_test start with id=5 connect by prior pid=id
  因为是从id开始查找上级,所以connect by prior 子句的条件是pid=d

《oracle数据库递归查询以及给结果赋初值》,布布扣,bubuko.com

《oracle数据库递归查询以及给结果赋初值》

标签:数据   io   art   ar   数据库   sql   oracle   table   

原文地址:http://my.oschina.net/u/1269023/blog/295451

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!