博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle中SYS_CONNECT_BY_PATH函数的妙用
阅读量:5866 次
发布时间:2019-06-19

本文共 917 字,大约阅读时间需要 3 分钟。

hot3.png

在Oracle中,SYS_CONNECT_BY_PATH函数主要作用是可以把一个父节点下的所有子节点通过某个字符进行区分,然后连接在一个列中显示。

AD:

中SYS_CONNECT_BY_PATH函数是非常重要的函数,下面就为您介绍一个使用SYS_CONNECT_BY_PATH函数的例子,实例如下:

 
create table test (a varchar2(10),b varchar2(10));     INSERT INTO TEST (A, B) VALUES ('1', '我');   INSERT INTO TEST (A, B) VALUES ('1', '们');   INSERT INTO TEST (A, B) VALUES ('2', '一');   INSERT INTO TEST (A, B) VALUES ('2', '起');   COMMIT;     SELECT A, B FROM TEST     A          B   ---------- ----------   1          我   1          们   2          一   2          起     现在需要达到如下的效果,   A          B   ---------- ----------   1          我,们   2          一,起    

只想用一句sql来返回结果。

 
SELECT A, LTRIM(MAX(SYS_CONNECT_BY_PATH(B, ',')), ',') B   FROM (SELECT B, A, ROW_NUMBER() OVER(PARTITION BY A ORDER BY B DESC) RN             FROM TEST)   START WITH RN = 1  CONNECT BY RN - 1 = PRIOR RN          AND A = PRIOR A   GROUP BY A; 

其中,SYS_CONNECT_BY_PATH函数主要作用是可以把一个父节点下的所有子节点通过某个字符进行区分,然后连接在一个列中显示。

row_number函数的用途是非常广泛,这个函数的功能是为查询出来的每一行记录生成一个序号。生产序号的方法通过over()函数里面的语句来控制。

转载于:https://my.oschina.net/u/1034537/blog/473709

你可能感兴趣的文章
MYSQL 优化常用方法
查看>>
Sharepoint 2013 启用搜做服务
查看>>
详解BarTender符号体系特殊选项之“行数”
查看>>
关于java中指针的概念
查看>>
由数量众多照片拼贴而成的马赛克图片
查看>>
nginx指定conf
查看>>
UML中的交互图
查看>>
JVM垃圾回收策略(转载/整理)
查看>>
ado.net 属性扩展 综合练习
查看>>
调用其他系统接口
查看>>
hive查询ncdc天气数据
查看>>
JavaScript设计模式:一、面向对象编程(第二节)
查看>>
Java 运算符优先级
查看>>
符号替换问题:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。...
查看>>
腾讯校园招聘会笔试题2011.10.15
查看>>
Chrome nacl开启
查看>>
注册步骤条
查看>>
Linux运维学习笔记-网络技术知识体系总结
查看>>
spring集成redis——主从配置以及哨兵监控
查看>>
Linux 用户和用户组的基本命令
查看>>