Start With (树查询)

基本语法如下:

SELECT ... FROM    + 表名
WHERE + 条件3
START WITH + 条件1
CONNECT BY PRIOR + 条件2 --示例
Select * From DEMO
Start With ID = '00001'
Connect By Prior ID = PID

条件1: 表示从哪个节点开始查找, 也就是通过条件1 查询到的数据, 作为后续查询的起始节点(参数).

当然可以放宽限定条件,如 ID in ('00001', '00011')以取得多个根节点,也就是多棵树;在连接关系中,除了可以使用列明外,还允许使用列表达式。

如果省略Start With

就默认把所有满足查询条件的Tree整个表中的数据从头到尾遍历一次,每一个数据做一次根,然后遍历树中其他节点信息.

条件2: 是连接条件,其中用PRIOR表示上一条记录,例如CONNECT BY PRIOR ID = PID,意思就是上一条记录的ID是本条记录的PID,即本记录的父亲是上一条记录。CONNECT BY子句说明每行数据将是按照层次顺序检索,并规定将表中的数据连入树形结构的关系中。

Prior 在父节点的一侧表示, 自底向上查, 在 子节点的一侧表示 自上向下查询;

条件3: 不能用在 Connect By 后, 这里的条件判断, 等价于 在最后查询出结果列表之后, 再进行条件筛选; 并非 删除掉 节点及子节点;

最新文章

  1. rediscluster 集群操作(摘抄)
  2. IOS AFNetworking
  3. JavaScript初学者应注意的七个细节
  4. python爬取网站数据
  5. Ubuntu 13.04 安装 GCC4.8.1
  6. 【性能优化】优化笔记之一:图像RGB与YUV转换优化
  7. JavaScript创建类的方式
  8. 询url包括字符串参数(js高度注意事项)
  9. 高速理解掌握node.js 字符编码,确码过程 以及base64编解码原理
  10. KVO 进阶
  11. 201521123055 《Java程序设计》第8周学习总结
  12. angular学习笔记04 理论加实践
  13. express 安装和运行
  14. 基于 HTML5 WebGL 的 3D 工控裙房系统
  15. Java序列化相关
  16. android OkHttpUtils 使用JSON数据作为请求参数
  17. iOS-iOS9系统SEGV_ACCERR问题处理【v3.6.3的一些bug修复】
  18. 【bzoj1089】严格n元树
  19. Saltstack配置管理(2)
  20. Dubbo -- 系统学习 笔记 -- 示例 -- 分组聚合

热门文章

  1. Paillier同态加密实现
  2. HTTP基础--请求
  3. 使用grub2引导进入Linux或Window系统
  4. new操作符创建对象的四个步骤
  5. Vue 通过调用百度API获取地理位置-经度纬度省份城市
  6. 使用xShell 连接 docker 使用说明
  7. 水滴app
  8. 关键词seo优化的核心和重点
  9. 创建VUE+Element-UI项目
  10. [PyTorch 学习笔记] 3.2 卷积层