• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    oracle SQL递归的使用详解
    oracle数据库中如果需要使用SQL递归语句,应该怎么写呢?下面就为您介绍一个oracle中使用SQL递归语句的例子,供您参考。
    例子:
    复制代码 代码如下:

    pid  id
      a   b  
      a   c    
      a   e  
      b   b1  
      b   b2  
      c   c1  
      e   e1  
      e   e3  
      d   d1  

    指定pid=a,选出  
      a   b  
      a   c    
      a   e  
      b   b1  
      b   b2  
      c   c1  
      e   e1  
      e   e3 
    SQL语句:select   parent,child   from   test   start   with   pid='a'  
    connect   by   prior   id=pid

    Oracle  SQL递归查询语句:
    1、表机构
    复制代码 代码如下:

    SQL> desc comm_org_subjection
     Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------
     ORG_SUBJECTION_ID                         NOT NULL VARCHAR2(32)   子键
     ORG_ID                                    NOT NULL VARCHAR2(32)
     FATHER_ORG_ID                             NOT NULL VARCHAR2(32)   父键
     LOCKED_IF                                 NOT NULL VARCHAR2(1)
     START_DATE                                NOT NULL DATE
     END_DATE                                           DATE
     EDITION_NAMEPLATE                                  NUMBER(8)
     CODE_AFFORD_IF                                     VARCHAR2(1)
     CODE_AFFORD_ORG_ID                        NOT NULL VARCHAR2(32)
     CODING_SHOW_ID                                     NUMBER(8)
     BSFLAG                                             VARCHAR2(1)
     MODIFI_DATE                                        DATE
     CREATOR_ID                                         VARCHAR2(32)
     CREATE_DATE                                        DATE
     CREATOR                                            VARCHAR2(35)

    2、递归查找父结点 org_id为C6000000000001下的所有子结点:
    复制代码 代码如下:

    select * from comm_org_subjection a
    start with a.org_id='C6000000000001'
    connect by prior a.org_subjection_id=a.father_org_id

    3、递归查找子结点 org_id为C6000000000001下的所有父结点:
    复制代码 代码如下:

    select org_id from comm_org_subjection a
    start with a.org_id='C6000000000001'
    connect by prior a.father_org_id=a.org_subjection_id

    您可能感兴趣的文章:
    • 深入sql oracle递归查询
    • Oracle 11GR2的递归WITH子查询方法
    • Oracle通过递归查询父子兄弟节点方法示例
    • oracle 使用递归的性能提示测试对比
    • Oracle递归查询start with connect by prior的用法
    上一篇:informatical lookup的使用详解
    下一篇:深入sql oracle递归查询
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    oracle SQL递归的使用详解 oracle,SQL,递归,的,使用,详解,