Oracle 树形结构遍历代码讲解
2007-07-30 12:29
330 查看
-- 遍历SQL
create table test (
id int ,
pid int ,
name varchar(10))
insert into test values ( 1, 0 ,'n1' );
insert into test values ( 2, 1 ,'n12' );
insert into test values ( 3, 1 ,'n13' );
insert into test values ( 4, 2 ,'n21' );
insert into test values ( 5, 2 ,'n22' );
insert into test values ( 6, 3 ,'n31' );
insert into test values ( 7, 3 ,'n32' );
insert into test values ( 8, 4 ,'n211' );
insert into test values ( 9, 4 ,'n212' );
//从叶结点开始找根节点
// prior 关键字 与谁放在一起,就是找谁
select * from test
start with id=7
connect by id = prior pid;
// 从根结点开始找子节点
select * from test
start with id=2
connect by prior id = pid;
//选择某层的下级节点
// level 是oracle 保留的级数字段
select id,name ,level from test
where level <=2
start with id =2
connect by prior id = pid;
-- 查出 7839 总裁下面各级 员工的工资和
select level , sum(sal)
from emp
group by level
start with empno = 7839
connect by prior empno = mgr
create table test (
id int ,
pid int ,
name varchar(10))
insert into test values ( 1, 0 ,'n1' );
insert into test values ( 2, 1 ,'n12' );
insert into test values ( 3, 1 ,'n13' );
insert into test values ( 4, 2 ,'n21' );
insert into test values ( 5, 2 ,'n22' );
insert into test values ( 6, 3 ,'n31' );
insert into test values ( 7, 3 ,'n32' );
insert into test values ( 8, 4 ,'n211' );
insert into test values ( 9, 4 ,'n212' );
//从叶结点开始找根节点
// prior 关键字 与谁放在一起,就是找谁
select * from test
start with id=7
connect by id = prior pid;
// 从根结点开始找子节点
select * from test
start with id=2
connect by prior id = pid;
//选择某层的下级节点
// level 是oracle 保留的级数字段
select id,name ,level from test
where level <=2
start with id =2
connect by prior id = pid;
-- 查出 7839 总裁下面各级 员工的工资和
select level , sum(sal)
from emp
group by level
start with empno = 7839
connect by prior empno = mgr
相关文章推荐
- Oracle 树形结构遍历代码讲解【转】
- Oracle中通过一条sql遍历树形结构
- oracle中遍历树形结构的方法
- oracle客户端plsql界面左侧的树形结构
- Oracle对树形结构按级次排序SQL
- java代码删除数据库中树形结构数据
- 详细讲解Oracle物理结构故障的处理方法
- oracle树形结构由子节点递归得到父节点
- ORACLE树形结构查询
- TensorFlow0.8源码阅读 -- 代码目录结构讲解
- Java遍历输出指定目录、树形结构所有文件包括子目录下的文件
- Related to Oracle SQL 关于树形数据的遍历
- Oracle之数据库逻辑结构基础讲解
- 非递归前序遍历二叉树-代码实例讲解
- oracle 删除级联树形结构数据
- 二叉树的遍历方法之层序-先序-中序-后序遍历的简单讲解和代码示例
- Linux内核源代码树形结构图
- 数据库Oracle、Sql Server单表树形结构数据查询语句
- MySql的sql语句中添加存储过程或者存储函数来实现Oracle中的start with ……connect by prior……递归(树形结构数据)查询
- 二叉树的遍历方法之层序-先序-中序-后序遍历的简单讲解和代码示例