`

Oracle函数sys_connect_by_path

 
阅读更多

正序:

select ltrim(sys_connect_by_path(org_abbreviation, '-'),'-')
  from (select org_abbreviation,rownum rn
          from (select coi.org_abbreviation
                  from comm_org_subjection cos
                  left join comm_org_information coi on cos.org_id =
                                                        coi.org_id
                 where cos.bsflag = '0'
                   and length(cos.org_subjection_id) >
                       (select length(tt.org_subjection_id)
                          from comm_org_subjection tt
                         where tt.org_id =
                               (select tt.code_afford_org_id
                                  from comm_org_subjection tt
                                 where tt.org_id = 'C1000000004640'))
                 start with cos.org_subjection_id =
                            (select cos1.org_subjection_id
                               from comm_org_subjection cos1
                              where cos1.org_id = 'C1000000002957'
                                and cos1.bsflag = '0')
                connect by prior cos.father_org_id = cos.org_subjection_id
                 order by cos.org_subjection_id))
 start with rn = 1
connect by prior rn = rn - 1;

 

反序:

select ltrim(sys_connect_by_path(org_abbreviation, '-'),'-')
                  from comm_org_subjection cos
                  left join comm_org_information coi on cos.org_id =
                                                        coi.org_id
                 where cos.bsflag = '0'
                   and length(cos.org_subjection_id) >
                       (select length(tt.org_subjection_id)
                          from comm_org_subjection tt
                         where tt.org_id =
                               (select tt.code_afford_org_id
                                  from comm_org_subjection tt
                                 where tt.org_id = 'C1000000004640'))
                 start with cos.org_subjection_id =
                            (select cos1.org_subjection_id
                               from comm_org_subjection cos1
                              where cos1.org_id = 'C1000000002957'
                                and cos1.bsflag = '0')
                connect by prior cos.father_org_id = cos.org_subjection_id
                 order by cos.org_subjection_id;

分享到:
评论

相关推荐

    oracle sys_connect_by_path 函数 结果集连接

    今天无意间,看connect by的使用,看到了sys_connect_by_path的用法,算是给我一个另类的惊喜了,sys_connect_by_path(columnname, seperator) 也可以拼出串来,不过这个函数本身不是用来给我们做这个结果集连接用...

    oracle列合并的实现方法

    很多场合我们都会用到...sys_connect_by_path(字段名, 2个字段之间的连接符号),这里的连接符号不要使用逗号,oracle会报错,如果一定要用,可以使用replace替换一下,方法如下 REPLACE(字段名,原字符,’,’)。这个

    oracle多行转为字符串总结

    介绍了将多行转为字符串的三种方案,并比较了三种方案的执行效率. 1.sys_connect_by_path + start with ... connect by ... prior + 分析函数 2.自定义Function/SP 3.使用 Oracle 10g 内置函数 wmsys.wm_concat

    oracle sql 行列转换

    行列转换,sys_connect_by_path,row_number等函数的用法

    oracle函数介绍(8) 综述.doc

     单值函数多数处理单个或多个值但只返回单个值(SYS_CONNECT_BY_PATH除外)。  聚合函数多数处理多行并且各分组序列分别返回成一行。  分析函数多数处理多行并且每条记录均会有返回。  需要注意不同类型函数可...

    Oracle 数据库特殊查询总结

    1. 查询本节点及本节点以下的所有节点: ...SELECT RPAD( ' ', 2*(LEVEL-1), '-' ) || DEPNAME "DEPNAME",CONNECT_BY_ROOT DEPNAME "ROOT",CONNECT_BY_ISLEAF "ISLEAF",LEVEL ,SYS_CONNECT_BY_PATH(DEPNAM

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    10.4.2 SYS_CONNECT_BY_PATH函数 279 10.4.3 CONNECT_BY_ROOT运算符 281 10.4.4 CONNECT_BY_ISCYCLE伪列和NOCYCLE参数 284 10.4.5 CONNECT_BY_ISLEAF伪列 287 10.5 小结 291 第11章 半联结和反联结 292 11.1 ...

    韩顺平oracle学习笔记

    oracle的函数; oracle数据库管理;oracle 的权角色; pl/sql 编程; 索引,约束和事物。 期望目标: 1 学会安装、启动、卸载oracle 2 使用sql *plus工具 3 掌握oracle用户管理 4 学会在oracle中编写简单的select...

    程序员的SQL金典6-8

     11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数  11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 ...

    程序员的SQL金典7-8

     11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数  11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 ...

    程序员的SQL金典4-8

     11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数  11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 ...

    程序员的SQL金典3-8

     11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数  11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 ...

    程序员的SQL金典.rar

     11.9.2 Oracle中的SYS_CONNECT_BY_PATH()函数  11.9.3 My SQL Server和DB2中递归查询 附录A 常用数据库系统的安装和使用  A.1 DB2的安装和使用  A.2 MySQL的安装和使用  A.3 Oracle的安装和使用  A.4 ...

Global site tag (gtag.js) - Google Analytics