[20111220]listagg 11G的新特性.txt

简介: [20111220]listagg 11G的新特性.txt显示相关的数据在一行,找到一个站点,总结了N多方法:www.oracle-base.com/articles/misc/StringAggregationTechniques.
[20111220]listagg 11G的新特性.txt

显示相关的数据在一行,找到一个站点,总结了N多方法:

www.oracle-base.com/articles/misc/StringAggregationTechniques.php

我第一个知道的是:
SELECT deptno,
       LTRIM(MAX(SYS_CONNECT_BY_PATH(ename,','))
       KEEP (DENSE_RANK LAST ORDER BY curr),',') AS employees
FROM   (SELECT deptno,
               ename,
               ROW_NUMBER() OVER (PARTITION BY deptno ORDER BY ename) AS curr,
               ROW_NUMBER() OVER (PARTITION BY deptno ORDER BY ename) -1 AS prev
        FROM   emp)
GROUP BY deptno
CONNECT BY prev = PRIOR curr AND deptno = PRIOR deptno
START WITH curr = 1;

后来了解了wmsys.wm_concat函数:
SELECT deptno,wmsys.wm_concat(ename) AS employees FROM emp GROUP BY deptno;

现在11G加入了listagg,感觉这个分析函数比wm_concat灵活一点,就是可以定义分割符号。

Select deptno,listagg(ename,'!') within group (order by sal) enames from emp group by deptno ;

目录
相关文章
|
9月前
|
SQL 关系型数据库 数据库
PG/GP group by expression语法
PG/GP group by expression语法
82 1
|
SQL Oracle 关系型数据库
【SQL开发实战技巧】系列(十一):拿几个案例讲讲translate|regexp_replace|listagg|wmsys.wm_concat|substr|regexp_substr常用函数
translate|regexp_replace|listagg|wmsys.wm_concat|substr|regexp_substr常用函数。如何使用translate或regexp_replace提取姓名的大写首字母缩写、如何使用translate或regexp_replace按字符串中的数值排序、如何聚合表中的行创建一个以逗号分隔拼接的字符串(函数LISTAGG、wmsys.wm_concat)、如何使用substr或regexp_substr提取第N个分隔符的子串、如何分解IP地址
【SQL开发实战技巧】系列(十一):拿几个案例讲讲translate|regexp_replace|listagg|wmsys.wm_concat|substr|regexp_substr常用函数
Zp
|
关系型数据库 MySQL
MySQL教程之concat以及group_concat的用法
MySQL教程之concat以及group_concat的用法
Zp
184 0
|
Oracle 关系型数据库 OLAP
[20180224]expdp query 写法问题.txt
[20180224]expdp query 写法问题.txt --//如果使用expdp/impdp导入导出,如果参数复杂,最好的建议使用参数文件.避免各种问题.通过简单的例子说明问题.
1184 0
|
关系型数据库 Oracle
|
Oracle 关系型数据库 Linux
[20170816]Join Elimination Bug.txt
[20170816]Join Elimination Bug.txt https://jonathanlewis.wordpress.com/2017/08/14/join-elimination-bug/ --//自己重复测试1次.
824 0
|
算法 索引 关系型数据库
[20170601]distinct的优化.txt
[20170601]distinct的优化.txt 1.环境: SCOTT@book> @ &r/ver1 PORT_STRING          VERSION    BANNER -------------------- ---------- ...
1068 0
[20170525]分析函数first_value.txt
[20170525]分析函数first_value.txt --//昨天看sql语句,发现居然分析函数first_value.我一直认为开发如果要做一些报表需要了解学习一些oracle分析函数的知识,我发现许 --//多开发这方面一篇空白.
804 0
[20170424]函数COALESCE优于NVL.txt
[20170424]函数COALESCE优于NVL.txt --//以前如果某个字段为NULL,在一些运算要给它赋值,比如0,实际上开发(包括自己更喜欢使用nvl),实际上COALESCE更加优于nvl, --//参考链接做一个例子: http://nimishgarg.
1036 0