oracle树状排序,Oracle树状结构查询

oracle用表的形式组织数据,某些数据还呈现树状结构,提供了对这些数据的组织、查询等功能。在扫描树结构表时,要依次访问树中的每一个节点,并且每个节点只能访问一次,其步骤如下:

1:从根节点开始

2:访问该节点

3:判断该节点有无被访问的子节点,若有,则转向它最左侧未被访问的子节点,并执行第二步,否则执行第四步

4:若该节点为根节点,则访问完毕,否则执行第五步

5:返回到该节点的父节点,并执行第三步骤

总之,整个扫描过程是一个中序遍历树的过程

1:树结构描述

数据之间的层次关系(父子关系)通过表中列与列之间的关系来描述

select

connect by {prior col1 = col2 || col1 = prior col2 }

[start with ]

connect by子句说明数据按照层次顺序检索,并将数据连入树形结构关系中

prior运算符必须放在连接关系的两列中某一列的前面,从而确定查找顺序是自上而下还是自下而上,连接关系中,可使用列名、列表达式

start with 子句为可选项,用来标识查找结构的根节点。若省略,则表示所有满足条件的行作为根节点

2:关于prior

prior和父列子列的相对位置,决定着查询方向。放在子节点前面是表示由父节点向子节点方向检索,放在父节点前面时表示从子节点向父节点方向检索,可以将prior想象成一个箭头,放在谁的前面&#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值