这篇文章主要给大家介绍了关于Oracle递归查询start with connect by prior、的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

一、基本语法

connect by递归查询基本语法是:

select 1 from 表格 start with ... connect by prior id = pId

start with:表示以什么为根节点,不加限制可以写1=1,要以id为123的节点为根节点,就写为start with id =123

connect by:connect by是必须的,start with有些情况是可以省略的,或者直接start with 1=1不加限制

prior:prior关键字可以放在等号的前面,也可以放在等号的后面,表示的意义是不一样的,比如 prior id = pid,就表示pid就是这条记录的根节点了

二、业务

举个例子,写条SQL:

t_user(用户表),t_unit_info(单位表),意思是以单位编码为"15803"的单位为根节点,查找出其单位及其子单位的用户信息

 select us.user_code, us.user_name
 from t_user us
 where exists (select 1
   from t_unit_info uinfo where 
   us.unit_code = uinfo.unit_code
   start with uinfo.unit_code = '15803'
   connect by prior uinfo.unit_code = uinfo.para_unit_code)

然后将prior换一下位置,发现只能查出单位编码为"15803"对应的单位,不能查子级单位

 select us.user_code, us.user_name
 from t_user us
 where exists (select 1
   from t_unit_info uinfo where 
   us.unit_code = uinfo.unit_code
   start with uinfo.unit_code = '15803'
   connect by uinfo.unit_code = prior uinfo.para_unit_code)

oracle 递归查询start with connect by prior的用法和知识不仅仅这些,本博客只是简单记录一下我所遇到的

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对爱安网的支持。

最新资讯
华为首席战略架构师:面对AI领域竞争 华为有自身优势

华为首席战略架构师:

华为首席战略架构师党文栓表示,竞争不仅仅在于一颗芯片
亚马逊与加拿大货运公司签署协议 至多入股15%

亚马逊与加拿大货运公

据彭博社报道,亚马逊已与加拿大货运公司Cargojet签署一
最新文件:FB 2015年就知晓剑桥分析违规使用数据

最新文件:FB 2015年就

据外媒报道,最新曝光的一些内部沟通文件显示,Facebook早
美团迎来关键转折点:外卖毛利率超20% 首次季度盈利

美团迎来关键转折点:外

美团于8月23日晚间发布2019年二季度财报。这份财报远
美团点评高管解读二季度财报:将在外卖领域主动创新

美团点评高管解读二季

美团点评今日发布的2019年第二季度财报显示,美团点评第
小赢科技遭调查 或违反美国联邦证券法

小赢科技遭调查 或违

股东权利律师事务所Johnson Fistel今日宣布,正在调查小
最新文章
Oracle备库宕机启动的完美解决方案

Oracle备库宕机启动的

这篇文章主要给大家介绍了关于Oracle备库宕机启动的完
Oracle的四道经典面试题分享

Oracle的四道经典面试

这篇文章主要给大家介绍了关于Oracle的四道经典面试题
oracle中利用关键字rownum查询前20名员工信息及rownum用法

oracle中利用关键字ro

这篇文章主要介绍了oracle中利用关键字rownum查询前20
Oracle截取JSON字符串内容的方法

Oracle截取JSON字符串

这篇文章主要介绍了Oracle截取JSON字符串内容 ,本文通
Oracle如何查看impdp正在执行的内容

Oracle如何查看impdp

这篇文章主要给大家介绍了关于Oracle如何查看impdp正
Linux虚拟机下安装Oracle 11G教程图文解说

Linux虚拟机下安装Ora

这篇文章主要介绍了Linux虚拟机下安装Oracle 11G教程