oracle SQL递归的使用详解

前端之家收集整理的这篇文章主要介绍了oracle SQL递归的使用详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

oracle数据库中如果需要使用sql递归语句,应该怎么写呢?下面就为您介绍一个oracle中使用sql递归语句的例子,供您参考。

例子:

<div class="codetitle"><a style="CURSOR: pointer" data="52589" class="copybut" id="copybut52589" onclick="doCopy('code52589')"> 代码如下:
<div class="codebody" id="code52589">
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递归查询语句:
<FONT style="COLOR: #ff0000">1、表机构

<div class="codetitle"><a style="CURSOR: pointer" data="44303" class="copybut" id="copybut44303" onclick="doCopy('code44303')"> 代码如下:
<div class="codebody" id="code44303">
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)

<FONT style="COLOR: #ff0000">2、递归查找父结点 org_id为C6000000000001下的所有子结点:

<div class="codetitle"><a style="CURSOR: pointer" data="22276" class="copybut" id="copybut22276" onclick="doCopy('code22276')"> 代码如下:
<div class="codebody" id="code22276">
select * from comm_org_subjection a
start with a.org_id='C6000000000001'
connect by prior a.org_subjection_id=a.father_org_id

<FONT style="COLOR: #ff0000">3、递归查找子结点 org_id为C6000000000001下的所有父结点:

<div class="codetitle"><a style="CURSOR: pointer" data="61797" class="copybut" id="copybut61797" onclick="doCopy('code61797')"> 代码如下:
<div class="codebody" id="code61797">
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

oracleoracle递归递归

猜你在找的Oracle相关文章