oracle 写递归,请问一个递归sql的写法
请教一个递归sql的写法
我想得到
请教下各位,这个sql该怎么写。
------解决方案--------------------
引用:哦,想要的结果格式错了。
是
with t as
(select 0 id_dir, null id_dir_p, '/' dir_nm
from dual
union all
select 1 id_dir, 0 id_dir_p, 'test' dir_nm
from dual
union all
select 2 id_dir, 0 id_dir_p, 'test2' dir_nm
from dual
union all
select 3 id_dir, 2 id_dir_p, 'test2_01' dir_nm
from dual
union all
select 4 id_dir, 2 id_dir_p, 'test2_02' dir_nm from dual)
select id_dir,
regexp_replace(ltrim(min(SYS_CONNECT_BY_PATH(dir_nm, ',')), ','),
'[/]?,',
'/')
from t
connect by prior id_dir = id_dir_p
group by id_dir
order by id_dir;
------解决方案--------------------
WITH a AS(
SELECT 0 id_dir1,NULL id_dir2,'' dir_name FROM dual
UNION ALL
SELECT 1,0,'TEST' FROM dual
UNION ALL
SELECT 2,0,'TEST2' FROM dual
UNION ALL
SELECT 3,2,'TEST2_01' FROM dual
UNION ALL
SELECT 4,2,'TEST2_02' FROM dual
)
SELECT id_dir1 id_directory,regexp_replace(sys_connect_by_path(dir_name,'/'),'^/{2}','/')directory_name FROM a
START WITH id_dir1=0 CONNECT BY PRIOR id_dir1=id_dir2 ORDER BY id_directory
主要用到了层次化查询和正则表达式
oracle 写递归,请问一个递归sql的写法相关推荐
- Oracle 写存储过程的一个模板还有一些基本的知识点
我很少用Oracle,也算新手,不过其实入手没有那么难,下面只是一个基本知识,高手绕道,其实数据库基本是相同的,这里提供都是基本知识点 有一个Oracle溢出的问题,容易让新手怀疑到无所怀疑,其实就是 ...
- oracle写java文件_Oracle PL/SQL java读写文件权限问题得到解决
在ORACLE中PL/SQL利用java读取文件 参考了 的内容,但是出现如下错误: Exception in thread "Root Thread" java.security ...
- 递归函数非递归化_递归神秘化
递归函数非递归化 by Sachin Malhotra 由Sachin Malhotra 递归神秘化 (Recursion Demystified) In order to understand re ...
- java递归怎么写_什么是递归?用Java写一个简单的递归程序
什么是递归?用Java写一个简单的递归程序 递归的定义 递归(recursion):以此类推是递归的基本思想,将规模大的问题转化为规模小的问题来解决. 递归的要素 自定义递归函数,并确定函数的基本功能 ...
- TypeScript 2.1中的类型运算 一个递归的Readonly泛型
去年12月的 TypeScript 2.1 中加入了 keyof / Lookup Types / Mapped Types 等 (编译期的) 类型运算特性. 本文将介绍这些特性,并用这些特性实现一个 ...
- 递归循环一个无限极数组_理解递归、尾调用优化和蹦床函数优化
想要理解递归,您必须先理解递归.开个玩笑罢了, 递归 是一种编程技巧,它可以让函数在不使用 for 或 while 的情况下,使用一个调用自身的函数来实现循环. 例子 1:整数总和 例如,假设我们想要 ...
- 在Oracle中写出性能优良的SQL语句
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习.摘录.并汇总部分资料与大家分享! (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE的解析器 ...
- 用java编写一个故事的程序_使用Java怎么编写一个递归程序
使用Java怎么编写一个递归程序 发布时间:2021-02-20 16:05:44 来源:亿速云 阅读:52 作者:Leah 这篇文章将为大家详细讲解有关使用Java怎么编写一个递归程序,文章内容质量 ...
- c语言中fact函数怎么调用,C语言程序题: 1、编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现...
点击查看C语言程序题: 1.编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现具体信息 答:int fac(int n) //非递归{int f=1; for(;n;) ...
- 编写程序C语言 用递归法求n,用C语言编写一个递归程序用来计算:1*2+2*3+3*4+.+(n-1)*n...
用C语言编写一个递归程序用来计算:1*2+2*3+3*4+.+(n-1)*n以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧 ...
最新文章
- D3.js系列——初步使用、选择元素与绑定数据
- SCLS:拟南芥二半萜类化合物调控根系微生物组
- C++面试题--(五)
- (积累)java里的套接字
- 如何修改maven默认jdk配置
- Shiro笔记(三)授权
- 【NLP】文本分类还停留在BERT?对偶比学习框架也太强了
- Linux_2.6字符设备驱动实例
- If 的替代词汇:unless、in case..._60
- 一秒点击手机屏幕次数_抓住夏天的尾巴|与自动点击评论器邂逅一次
- 在控制台远程连接mysql数据库时,出现ERROR 2049 (HY000)错误
- 从物理页面的争抢看linux内核内存管理
- 【翻译】Drafting and Revision: Laplacian Pyramid Network for Fast High-Quality Artistic Style Transfer
- 国际项目投标那些事(六)投标文件怎么写才能惊呆业主 WTSolutions
- Sql语法-Oracle
- 华为机试练习(十二)叠积木
- win10 .Net Runtime Optimization Service占用大量CPU资源解决方法
- android官网m魅族15,魅族15/Plus/Lite等机型现身Android官网:设计惊艳
- 一个电脑可以装两个java么,是否可以在一台计算机上安装多个Eclipse?
- 阿里云服务器安全组开放指定端口无法访问问题记录
热门文章
- Python高级特性之---切片操作
- Linux 部分(tcp\ip)系统内核优化
- 80sec被黑原因分析
- 我的 fedora 14 安装备忘
- RedHat Linux 5.2 网关及安全应用
- SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)...
- Python对zip、tgz、rar压缩包的解压与读取
- 【狂神说Redis】2Redis入门 2-4 Redis基础知识
- ping 丢包 网络摄像头_Ping丢包故障案例
- html页面添加视频背景设置为自动播放,打开网址就会自动播放,简单有效亲测