Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用。
创建示例表:
CREATE TABLE TBL_TEST
(
ID NUMBER,
NAME VARCHAR2(100 BYTE),
PID NUMBER DEFAULT 0
);
插入测试数据:
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('1','10','0');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('2','11','1');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('3','20','0');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('4','12','1');
INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('5','121','2');
从Root往树末梢递归 (通过根节点遍历子节点)
SELECT
*
FROM
TBL_TEST START
WITH id=1 CONNECT BY prior id = pid
从末梢往树ROOT递归 (通过子节点向根节点追朔)
SELECT
*
FROM
TBL_TEST START
WITH id=5 CONNECT BY prior pid = id
可通过level 关键字查询所在层次
SELECT
*,
level
FROM
TBL_TEST START
WITH id=1 CONNECT BY prior id = pid
start with ...connect by 的用法,
start with 后面所跟的就是就是
递归的种子。
递归的种子也就是递归开始的地方 connect by 后面的"prior" 如果缺省:则只能查询到符合条件的起始行,并不进行递归查询;
connect by prior 后面所放的字段是有关系的,它指明了查询的方向。
分享到:
相关推荐
Oracle start with.connect by prior子句实现递归查询
主要给大家介绍了关于Oracle递归查询start with connect by prior、的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
oracle中 connect by prior 递归算法 Oracle中start with...connect by prior子句用法 connect by 是结构化查询中用到的
其中,`START WITH` 子句指定了递归查询的起始点,`CONNECT BY` 子句指定了递归查询的连接条件。 在上面的示例代码中,我们创建了一个名为 `T_DEPT_HP` 的表,并插入了一些示例数据。然后,我们可以使用递归函数来...
在Oracle中用Start with...Connect By子句递归查询
Oracle 递归查询, start with connect by prior 用法 find_in_set 函数 concat,concat_ws,group_concat 函数 MySQL 自定义函数 手动实现 MySQL 递归查询 Oracle 递归查询 在 Oracle 中是通过 start ...
基于python实现的迷宫生成算法+基于递归的求解源码.zip基于python实现的迷宫生成算法+基于递归的求解源码.zip基于python实现的迷宫生成算法+基于递归的求解源码.zip基于python实现的迷宫生成算法+基于递归的求解源码...
1.回溯 2.递归与递推 3.贪心 4.分治 5.图 6.树 7.搜索 8.动态规划 题目比较基础,适合初学者
递归算法求阶乘.rar 递归算法求阶乘.rar 递归算法求阶乘.rar 递归算法求阶乘.rar 递归算法求阶乘.rar 递归算法求阶乘.rar
oracle递归查询
递归算法算岁数.rar 递归算法算岁数.rar 递归算法算岁数.rar 递归算法算岁数.rar 递归算法算岁数.rar 递归算法算岁数.rar
易语言源码递归算法算岁数.rar 易语言源码递归算法算岁数.rar 易语言源码递归算法算岁数.rar 易语言源码递归算法算岁数.rar 易语言源码递归算法算岁数.rar 易语言源码递归算法算岁数.rar
易语言源码递归算法求阶乘.rar 易语言源码递归算法求阶乘.rar 易语言源码递归算法求阶乘.rar 易语言源码递归算法求阶乘.rar 易语言源码递归算法求阶乘.rar 易语言源码递归算法求阶乘.rar
用递归方法增加节点.rar用递归方法增加节点.rar
易语言源码非递归算法遍历目录.rar 易语言源码非递归算法遍历目录.rar 易语言源码非递归算法遍历目录.rar 易语言源码非递归算法遍历目录.rar 易语言源码非递归算法遍历目录.rar 易语言源码非递归算法遍历目录....
Oracle使用递归查询。查询树结构的sql。在Oracle中,递归查询要用到start with ……connect by prior……
易语言源码易语言无递归遍历文件源码.rar 易语言源码易语言无递归遍历文件源码.rar 易语言源码易语言无递归遍历文件源码.rar 易语言源码易语言无递归遍历文件源码.rar 易语言源码易语言无递归遍历文件源码.rar ...
在处理 START WITH 和 CONNECT BY 语句时,Oracle 会按照以下步骤执行: 1. 遍历每一行数据,如果满足 START WITH 条件,则执行 RECURSE 过程。 2. 在 RECURSE 过程中, Oracle 会将当前行的子节点添加到结果集中,...
6--[scratch爬台阶问题求解(递归求解)].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码6--[scratch爬台阶问题求解(递归求解)].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码6--[scratch爬台阶...