首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >oracle 中start with ... connect by prior 子句的用法

oracle 中start with ... connect by prior 子句的用法

作者头像
小小明童鞋
发布2018-06-13 16:21:33
1.7K0
发布2018-06-13 16:21:33
举报
文章被收录于专栏:java系列博客java系列博客

忍不了了,必须要搞清楚 oracle 中start with  ... connect by prior 子句的用法,每次都会忘记,必须写出来加深印象!!!

connect by 是结构化查询中用到的,其基本语法是: 

select ... from tablename start with 条件1 
connect by 条件2 
where 条件3;

假设table这张表是一个树形表 表中存在两个字段:org_id,parent_id 那么通过表示每一条记录的parent是谁,就可以兴城一个树状结构,用下面的语句可以取得这棵树的所有记录

select * from table
start with org_id = 1
connect by prior org_id = parent_id;

-- 其中,条件一是根节点的限定语句,这里可以放一个id(就形成一棵树),也可以放多个id(形成多棵树) -- 条件二 是连接条件,其中用piror表示上一条记录,比如 connect by prior org_id = parent_id就是说上一条记录的Org_id 是本条记录的parent_id,即本记录的父亲是上一条记录。 -- 条件三 是过滤条件,用于返回的所有记录进行过滤 

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档