当前位置:  数据库>oracle

Oracle层次结构查询语句

    来源: 互联网  发布时间:2017-03-27

    本文导语:   Oracle 提供了一个有趣的功能 connect by 子句,它可以对具有家族树结构的分枝进行排序。它的用途有 机构或公司的各层结构,财务的科目代码等。   要使用查询遍历,需要在将数据在基表中按照层次结构进行存储。比如一...

  Oracle 提供了一个有趣的功能 connect by 子句,它可以对具有家族树结构的分枝进行排序。它的用途有 机构或公司的各层结构,财务的科目代码等。

  要使用查询遍历,需要在将数据在基表中按照层次结构进行存储。比如一个组织机构就是这样的典型例子:

  实现语句:

  SELECT column

  FROM table_name

  START WITH column=value

  CONNECT BY PRIOR 父主键=子外键

  例1:在ORACLE的EMP 表中,每一条记录都有一个唯一标识当前雇员的empno和标识这个雇员的经理的mgr列。如果mgr 为空,则该雇员是该机构的最顶级。www.linuxidc.com现在要列出每个雇员的层次结构(从顶到底):

  select lpad(' ',4*(level-1))||ename name ,empno,mgr from emp

  start with mgr is null

  connect by prior empno=mgr;

  NAME                    EMPNO     MGR

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

  KING                      7839

  JONES                 7566      7839

  SCOTT             7788      7566

  ADAMS        7876     7788

  FORD              7902      7566

  SMITH         7369      7902

  BLAKE                 7698      7839

  ALLEN             7499      7698

  WARD              7521      7698

  MARTIN            7654      7698

  TURNER            7844      7698

  JAMES             7900     7698

  CLARK                 7782      7839

  MILLER            7934      7782

  14 rows selected.

  SQL>

  从查询结果中可以看出,由于JONES、BLAKE、CLARK的上司是KING,所以JONES等MGR(经理编号)=KING的empno号,即KING的直接下级是JONES、BLAKE、CLARK,因为他们的MGR与KING的EMPNO一样。


    
 
 

您可能感兴趣的文章:

  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • oracle用什么SQL语句判断表存不存在
  • 请问怎么用jsp语句删除oracle中的一条记录?
  • Oracle中SQL语句连接字符串的符号使用介绍
  • Oracle用什么语句查询字段?
  • 怎么在java中向一个sql语句传参数,就像oracle的proc一样啊?
  • 请问在 Linux 下如何用代码实现连接oracle数据库 并 执行 SQL 语句?
  • Oracle 9i轻松取得建表和索引的DDL语句
  • Oracle的SQL语句中如何处理‘&’符号
  • 关于Oracle中的sql语句的疑问,向大家请教。
  • Oracle Sql语句长度限制问题及解决
  • Oracle9i取得建表和索引的DDL语句
  • Oracle 中文字段进行排序的sql语句
  • oracle数据库添加或删除一列的sql语句
  • Oracle中查询本月星期5的所有日期列表的语句
  • Oracle中备份表的简单sql命令语句
  • oracle中误删除表后恢复语句(FLASHBACK)
  • Oracle判断指定列是否全部为数字的sql语句
  • jsp中在oracle中查询日期类型时sql语句该怎么写啊?
  • Oracle 常用的SQL语句
  • Oracle层次查询和with函数的使用示例
  • oracle 层次化查询(行政区划三级级联)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle物理结构概述
  • 轻松理解Oracle数据库中的物理结构
  • ORACLE 修改表结构 之ALTER CONSTAINTS的使用
  • 简述Oracle数据仓库的体系结构
  • oracle复制表结构和复制表数据语句分享
  • 手把手教你Oracle数据库导出数据库结构到PowerDesigner
  • oracle 数据库学习 基本结构介绍
  • Oracle体系结构需要首先了解的两个概念
  • Oracle网络应用结构
  • Oracle两个基本概念帮你了解体系结构
  • Oracle专用服务器的内存结构分布原则
  • 在Oracle网络结构解决连接问题
  • Oracle 体系结构笔记整理
  • Oracle 11g Release (11.1) 索引底层的数据结构
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle 数据库开发工具 Oracle SQL Developer
  • Oracle 10g和Oracle 11g网格技术介绍
  • Oracle EBS R12 支持 Oracle Database 11g
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • Oracle 数据库(oracle Database)性能调优技术详解
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • ORACLE日期相关操作
  • Linux /$ORACLE_HOME $ORACLE_HOME


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3