分级取数据

select employee_id,last_name,job_id,manager_id from employees

start with employee_id=101 --employee_id=101为父

connect by prior employee_id=manager_id;--现在是由父指向子(从上到底)

EMPLOYEE_ID LAST_NAME       JOB_ID  MANAGER_ID

----------- ------------------------- ---------- ----------

101 Kochhar       AD_VP 100

108 Greenberg       FI_MGR 101

109 Faviet       FI_ACCOUNT 108

110 Chen       FI_ACCOUNT 108

111 Sciarra       FI_ACCOUNT 108

112 Urman       FI_ACCOUNT 108

113 Popp       FI_ACCOUNT 108

200 Whalen       AD_ASST 101

203 Mavris       HR_REP 101

204 Baer       PR_REP 101

205 Higgins       AC_MGR 101

EMPLOYEE_ID LAST_NAME       JOB_ID  MANAGER_ID

----------- ------------------------- ---------- ----------

206 Gietz       AC_ACCOUNT 205

select employee_id,last_name,job_id,manager_id from employees

start with employee_id=101 --employee_id=101为父

connect by prior manager_id=employee_id;--现在是由子指向父(从底向上)

EMPLOYEE_ID LAST_NAME       JOB_ID  MANAGER_ID

----------- ------------------------- ---------- ----------

101 Kochhar       AD_VP 100

100 King       AD_PRES

select employee_id,last_name,job_id,manager_id from employees

start with employee_id=101

connect by prior employee_id=manager_id

and employee_id!=108;

EMPLOYEE_ID LAST_NAME       JOB_ID  MANAGER_ID

----------- ------------------------- ---------- ----------

101 Kochhar       AD_VP 100

200 Whalen       AD_ASST 101

203 Mavris       HR_REP 101

204 Baer       PR_REP 101

205 Higgins       AC_MGR 101

206 Gietz       AC_ACCOUNT 205

select employee_id,last_name,job_id,manager_id from employees

where employee_id!=108

start with employee_id=101

connect by prior employee_id=manager_id;

EMPLOYEE_ID LAST_NAME       JOB_ID  MANAGER_ID

----------- ------------------------- ---------- ----------

101 Kochhar       AD_VP 100

109 Faviet       FI_ACCOUNT 108

110 Chen       FI_ACCOUNT 108

111 Sciarra       FI_ACCOUNT 108

112 Urman       FI_ACCOUNT 108

113 Popp       FI_ACCOUNT 108

200 Whalen       AD_ASST 101

203 Mavris       HR_REP 101

204 Baer       PR_REP 101

205 Higgins       AC_MGR 101

206 Gietz       AC_ACCOUNT 205

用LEVEL和LPAD格式化分级报告

select lpad(last_name,length(last_name)+(LEVEL*2)-2,'$') as org_chart,level

from employees

start with employee_id=100

connect by prior employee_id=manager_id;

PLSQL分级取数据的更多相关文章

  1. MongoDBDao 工具类(包含分页取数据)

    mongdb工具类 package e16wifi.statistic.com.mongodb; import java.util.ArrayList; import java.util.List; ...

  2. RSA3:预提取数据

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  3. nodejs--实现跨域抓取数据

    最近公司安排给我一个任务,抓取页面数据:http://survey.finance.sina.com.cn/static/20205/20131120.html?pid=20205&dpc=1 ...

  4. java抓取网页数据,登录之后抓取数据。

    最近做了一个从网络上抓取数据的一个小程序.主要关于信贷方面,收集的一些黑名单网站,从该网站上抓取到自己系统中. 也找了一些资料,觉得没有一个很好的,全面的例子.因此在这里做个笔记提醒自己. 首先需要一 ...

  5. 定时从远程的数据库中取数据,然后把取出来的数据插入或更新本地的oracle数据库的表

    最近项目中有一种需求: 大致需求是这样的 通过给定的 用户名和密码 要定时从远程的数据库中取数据,然后把取出来的数据插入或更新本地的oracle数据库的表 项目的结构式struts1 hibernat ...

  6. Spark Streaming中向flume拉取数据

    在这里看到的解决方法 https://issues.apache.org/jira/browse/SPARK-1729 请是个人理解,有问题请大家留言. 其实本身flume是不支持像KAFKA一样的发 ...

  7. C#程序中从数据库取数据时需注意数据类型之间的对应,int16\int32\int64

    private void btn2_Click(object sender, RoutedEventArgs e)         {             using (SqlConnection ...

  8. C# WebBrowser控件 模拟登录 抓取数据

    参考博客:C#中的WebBrowser控件的使用 参考博客:C#中利用WebBrowser控件,获得HTML源码 一.问题点: 1.模拟登录后,如果带有嵌套的iframe嵌套,不好读取iframe内容 ...

  9. 用setTimeout 代替 setInterval实时拉取数据

    在开发中,我们常常碰到需要定时拉取网站数据,如: setInterval(function(){ $.ajax({ url: 'xx', success: function( response ){ ...

随机推荐

  1. Android开发(十四)——SimpleAdapter与自定义控件

    ListView中可以使用SimpleAdapter进行数据与视图的绑定,但都是对已有的系统控件的绑定,如果自定义空间直接使用SimpleAdapter绑定,则会报错. 如,使用CircleImage ...

  2. PHP更改自动加载的顺序

    composer的锅 自从PHPer们用上了composer后,对于传统的加载方式倒是不会用了,可谓是"收之东隅,失之桑榆". 下面说一下怎么改变加载顺序来覆写Laravel中的h ...

  3. InstallShield: 1628 完成基于脚本的安装失败

    问题: 第一次卸载程序失败,以后每次卸载出现1628 完成基于脚本的安装失败,使用安装包打开也会出现相同问题. 原因: 首先检查安装包是否出错,然后检查卸载脚本是否出错. InstallShield程 ...

  4. cordova打包vue2(webpack)android、ios app

    使用cordova打包vue2(webpack)app for android ios1.vue项目通过vue-cli脚手架建立项目,使用webpack进行打包,下边是一整套命令. #npm 版本最好 ...

  5. 让ubuntu下的eclipse支持GBK编码

    把Windows下工程导入Linux下Eclipse中,由于以前的工程代码,都是GBK编码,而Ubuntu默认不支持GBK编码,所以,我们要让Ubuntu支持GBK,方法如下: 1.修改/var/li ...

  6. Ant与Proguard集中

    示例: <taskdef resource="proguard/ant/task.properties"         classpath="/usr/local ...

  7. 0x800f0845 更新1803报错

    Windows 10累积更新KB4056892可能并不兼容AMD处理器,采用AMD Athlon 64 X2处理器的设备至少存在两起报告.

  8. duilib进阶教程 -- TreeView控件的不足 (7)

    上一个教程中,虽然播放列表的框架和迅雷一样了,但是字体大小.文字居中还没有解决.如果是刚学duilib,搞定这个可不容易,因为在有了入门教程的指导后,很容易就想到去看[属性列表.XML],但是当你试了 ...

  9. spark基础---->spark的第一个程序

    这里面我们介绍一下spark的安装,并通过一个python的例子来简单的体会一下spark的使用. spark的安装与使用 安装环境:mac 10.13.6,spark版本:2.3.1,python版 ...

  10. Qt编写调试日志输出类带网络转发(开源)

    用qt开发商业程序已经九年了,陆陆续续开发过至少几十个程序,除了一些算不算项目的小工具外,大部分的程序都需要有个日志的输出功能,希望可以将程序的运行状态存储到文本文件或者数据库或者做其他处理等,qt对 ...