Oracle级联查询

在ORACLE 数据库中有一种方法可以实现级联查询
select  *                //要查询的字段
from table              //具有子接点ID与父接点ID的表 
start with selfid=id      //给定一个startid(字段名为子接点ID,及开始的ID号)
connect by prior selfid=parentid       //联接条件为子接点等于父接点
这个SQL主要用于级联查询,给一个父接点可以查出所有的子接点。及子接点的子接点,一查到底,很实用。
例:航班表airline,如何用sql语句查询出从广州出发能到达的所有目的地,允许任意中转。
FLIGHTNO ORIGIN  DESTINATION
-------------------------------------------
cz3001  CAN  CSX
cz3002  CAN  SHA
cz3003  CSX  SHA
cz3004  CSX  PEK
cz3005  SHA  XIY
cz3006  SHA  SWA
cz3007  PEK  URC
cz3008  PVC  AMS
cz3009  WUH  PVC
cz3010  WUH  XIY
这里根就是CAN,SQL语句如下:
select t.destination from airline t start with origin='CAN' connect by prior destination = origin;
查询结果:

DESTINATION
-------------------
CSX  
SHA  
XIY  
SWA  
PEK  
URC  
SHA  
XIY  
SWA 

9 rows selected.
--------------------------------
在网上看到下面的例子应该更容易理解些,转载一下:
数据结构如下:
t1
 t11
     t111
        t1111
 t12
     t121
        t1211
 
db数据字段如下:
task_id             task_name         t.parent_task_id       ***
***                     ***                          ***                               ***
000001            t1                         ***                                 ***
000002            t11                       000001                        ***
000005            t12                       000001                         ***
000003            t111                    000002                         ***
000004            t1111                  000003                         ***
000006            t121                    000005                         ***
000007            t1211                  000006                         ***
***                     ***                       ***                                 ***

查询语句:

select t.task_id ,t.task_name ,t.parent_task_id 
from t_task t 
start with task_id='000001'
connect by prior task_id = parent_task_id;
http://roucheng.cnblogs.com/
结果显示:
task_id                 task_name          t.parent_task_id
000001                t1           
000002                t11                       000001
000003                t111                     000002
000004                t1111                    000003
000005                t12                       000001
000006                t121                     000005
000007                t1211                   000006

strat with 指定层次开始的条件,即是说满足这个条件的行即可以做为层次树的最顶层 
  
connect by prior指层之间的关联条件,即什么样的行是上层行的子行(自连接条件)
 
select level ,id,name,parentid from temptable2 
  connect by prior parentid(属于顶层的列)=id(子层的列)  start with id =1

http://www.cnblogs.com/roucheng/p/5404594.html

转载于:https://www.cnblogs.com/roucheng/p/oraclejilian.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/294503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android面试题总结加强版(二)

http://blog.csdn.net/superjunjin/article/details/7855995 16.Android常用控件的信息 单选框(RadioButton与RadioGroup): RadioGroup用于对单选框进行分组,相同组内的单选框只有一个单选框被选中。 事件:setOnCheckedChangeListener()&…

1 盒用 1 年,这个防雾黑科技,让你的眼镜再也不起雾!

▲ 点击查看本来被疫情这么一闹,口罩就已经成了我们离不开的刚需品。现在天气大幅度降温,口罩更不能摘了,必须得御寒防疫两手抓!虽然口罩的优点有目共睹,但它最大的 Bug 也够大伙儿吐槽一顿了——口罩眼镜一秒起雾&…

福利好礼现金大奖等你来→首届 .NET Conf China Hackathon 火热报名中!

.NET 开源以来越来越多的开发者和企业开始加入到 .NET 的生态。.NET 6 是 .NET Framework, .NET Core 和 Mono 三个平台完成融合的第一个长期支持版本,无论你是开发云原生应用,还是 IOT 应用,移动端,桌面应用,.NET 6 …

ciscodk新科目——1Z1-807

1Z1-807是ciscodk.com刚更新的科目,具体信息如下: 1Z1-807 Java Enterprise Edition 6 Enterprise Architect Certified Master Exam (Step 1 of 3) 想知更多新科目就在ciscodk .com转载于:https://blog.51cto.com/ciscodk/1088893

一站式解决,Android 拍照 图库的各种问题

在android开发中, 在一些编辑个人信息的时候,经常会有头像这么一个东西,就两个方面,调用系统相机拍照,调用系统图库获取图片.但是往往会遇到各种问题: 1.oom 2.图片方向不对 3.activity result 的时候data null 4.调用图库的时候没找到软件 嘿嘿..开代码: 首先是调用系统拍照…

(转载)9个主流的开源许可协议[整理]

http://univasity.iteye.com/blog/1292658 关于开源许可现今存在的开源协议很多,而经过Open Source Initiative 组织通过批准的开源协议目前有60多种(http://www.opensource.org/licenses/alphabetical )。我们在常见的开源协议如BSD, GPL, L…

java属于面相_[Java教程]面相对象

[Java教程]面相对象0 2018-09-13 16:00:26面向对象那什么是面向对象? 在Java 中,我们是一切皆对象,所有的方法都是围绕着对象来的。面相对象是相对面向过程而来的,他们都是一种思想,面向过程,强调的是一种功…

Android面试题总结加强再加强版(三)

http://blog.csdn.net/superjunjin/article/details/7860025 26.如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态? 当你的程序中某一个Activity A 在运行时中,主动或被动地运行另一个新的Activity B 这个时候A会…

下面由我来给大家表演个绝活

1 娶个老婆真不容易啊!▼2 孩子有些东西不是努力就能吃到的啊▼3 给大家表演个绝活▼4 在危险的边缘一点点试探▼5 你知道为什么狗子要拆家了吗▼6 外国版姜太公钓鱼愿者上钩▼7 最好看的那个晚霞永远出现在教室的窗外▼你点的每个赞,我都认真当成…

.Net 下高性能分表分库组件-连ShardingCore接模式原理

ShardingCore 一款ef-core下高性能、轻量级针对分表分库读写分离的解决方案,具有零依赖、零学习成本、零业务代码入侵。Github Source Code 助力dotnet 生态 Gitee Source Code介绍在分表分库领域java有着很多的解决方案,尤其是客户端解决方案(ShardingSphere)&…

PHP 学习1.1

1 链接mysql 数据简单测试 <html><head> <title></title> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /></head><body><?php $mysqli new mysqli(); $mysqli->connect(&quo…

php 利用http上传协议(表单提交上传图片 )

主要就是利用php 的 fsocketopen 消息传输。 这里先通过upload.html 文件提交&#xff0c;利用chrome抓包&#xff0c;可以看到几个关键的信息。 首先指定了表单类型为multipart/form-data;。 boundary是分隔符 因为上传文件不在使用原有的http协议了。请求内容不再可能以 x…

Nginx Unit 1.27.0 发布

目录 介绍 更新内容 将 HTTP 请求重定向到 HTTPS 为纯路径 URI 提供可配置的文件名 完整的更新日志 其他 平台更新 介绍 Nginx Unit 是一个动态应用服务器&#xff0c;能够与 Nginx Plus 和 Nginx 开源版并行或独立运行。Nginx Unit 支持 RESTful JSON API&#xff0c;…

java搜索string_java – 在数组列表中搜索最常见的String

我想知道如何搜索字符串的ArrayList以找到我创建的“行程”对象中最常出现的“目的地”(其中包含不同目的地的列表.)到目前为止,我有&#xff1a;public static String commonName(ArrayList itinerary){int count 0;int total 0;ArrayList names new ArrayList();Iteratori…

重新认识Docker Compose之Sidecar模式

什么是Docker Compose在微服务盛行的今天&#xff0c;我们通常是这么定义Compose的&#xff1a;对容器的统一启动和关闭的编排工具。但是我以前还是有个疑惑&#xff0c;谁会用Compose在一台服务器上部署多个服务呢&#xff1f;干脆直接用单体服务就行了&#xff01;直到我遇到…

Android面试题总结加强再加强版(四)

http://blog.csdn.net/superjunjin/article/details/7862182 1&#xff0c;双缓冲技术原理以及优缺点&#xff1a; 创建一幅后台图像&#xff0c;将每一帧画入图像&#xff0c;然后调用drawImage()方法将整个后台图像一次画到屏幕上去。 优点&#xff1a;双缓冲技术的优点在于大…

数学家看到就把持不住,高斯被它迷得神魂颠倒,2600年的数学史里的一个奇迹……...

全世界只有3.14 % 的人关注了爆炸吧知识数学的美两个字就能说清数学女神很可能是个洁癖她的苛刻就体现在公式里那每一个符号每一个数字都不允许有哪怕一点杂质如此才是她最认可的孩子因为知道了勾股定理古人们才创造了辉煌因为有了经典力学公式人类才能探索星辰大海因为掌握了质…

JSFL:导入Png图片导出swf

现在项目需要用到某种格式的swf&#xff0c;既这个swf里的舞台上原点有两个MovieClip&#xff0c;分别命名为mc1&#xff0c;mc2. mc1和mc2都是从外部导入的同一个png图片转为mc而来的。然后导出为这个png同名的swf文件&#xff0c;和png同目录。 代码如下&#xff1a; //功能&…

SQLSERVER中的自旋锁

SQLSERVER中的自旋锁 在SQLSERVER中的锁有很多&#xff0c;例如什么意向共享锁&#xff0c;排他锁&#xff0c;行&#xff0c;页锁 这些都属于LOCK 而latch比lock更轻量级&#xff0c;只在内存中存在&#xff0c;一般用来锁住数据页面&#xff0c;防止多人同时修改内存中的一个…

java语言程序设计第六章答案_Java语言程序设计(邵丽萍编著)第六章.doc

Java语言程序设计(邵丽萍编著)第六章第6章(一)判断题(1)抽象类不能实例化。 ( )(2)一个类中&#xff0c;只能拥有一个构造方法。 ( )(3)内部类都是非静态的。 ( )(4)接口中的所有方法都没有被实现。 ( )(5)实现一个接口&#xff0c;则在类中一定要实现接口中的所有方法。 ( )(6…