度量快速开发平台-专业、快速的软件定制快开平台
标题: oracle 11g中 wm_concat、listagg [打印本页]
作者: 张兴康 时间: 2020-5-25 18:01
标题: oracle 11g中 wm_concat、listagg
WMSYS.WM_CONCAT: 依赖WMSYS 用户,不同oracle环境时可能用不了,返回类型为CLOB,可用substr截取长度后to_char转化为字符类型
LISTAGG : 11g2才提供的函数,不支持distinct,拼接长度不能大于4000,函数返回为varchar2类型,最大长度为4000.
SQL> create table a as select 1 id,'x' t1 from dual union all select 2,'y' from dual;
SQL> create table b as select 1 id,'a' t2 from dual
2 union all select 1,'b' from dual
3 union all select 1,'c' from dual
4 union all select 2,'d' from dual
5 union all select 2,'e' from dual;
SQL> select a.id,a.t1,wm_concat(b.t2) list from a,b where a.id=b.id group by a.id,a.t1;
ID T1
---------- ---
LIST
------------------------------
1 x
a,c,b
2 y
d,e
SQL> select a.id,a.t1,listagg(b.t2,',') within group(order by a.id,a.t1) from a,b where a.id=b.id group by a.id,a.t1;
ID T1
---------- ---
LISTAGG(B.T2,',')WITHINGROUP(O
------------------------------
1 x
a,b,c
2 y
d,e
作者: 陈晓龙 时间: 2020-5-25 21:42
越来越有深度了!
作者: 万望 时间: 2020-5-27 12:52
11g又添新函数啦?赞一个
作者: 万望 时间: 2020-5-27 12:59
WMSYS用户说是跟Oracle的版本有关系,xe版是没有这个用户的,但是可以重建
作者: 张兴康 时间: 2020-5-28 18:07
前两天株洲项目11G数据库,运行督办流程的时候报错,才知道的
作者: 万望 时间: 2020-5-28 20:53
作者: 万望 时间: 2020-5-28 20:54
欢迎光临 度量快速开发平台-专业、快速的软件定制快开平台 (http://plat.delit.cn/) |
Powered by Discuz! X3.2 |