LISTAGG窗口函数示例
介绍:WM_CONCAT在12版本后已经被淘汰了,有可能报lob这样的问题,实际检查数据,数据不存在问题,有可能算是Oracle的bug吧,11版本后新增了listagg函数,用法总结
写法规范:
1.LISTAGG(字段, 连接符) WITHIN GROUP (ORDER BY 字段) --这是非开窗的写法需要你自己加group by
2.LISTAGG(字段, 连接符) WITHIN GROUP (ORDER BY 字段) over(partition by 分组字段) --这是开窗的写法
注:1,2两种写法请注意返回的类型是varchar2类型,也是说最大长度是4000,字符串长度要求不大可以用用
3.xmlagg(xmlparse(content 字段(也可以是多字段拼接)||连接符 wellformed) order by 字段).getclobval()
注:这里返回的是clob类型,适合长度比较大的字符串拼接,xmlagg尝试下,不给加开窗over,那么就写法上就比较累赘了,必要时需要考虑下性能问题
参考:http://docs.amazonaws.cn/zh_cn/redshift/latest/dg/r_Examples_of_LISTAGG_WF.html
https://www.cnblogs.com/interesting-whh/p/11090796.html
https://www.cnblogs.com/jichunhu/p/8930850.html
https://blog.csdn.net/rczrj/article/details/74977010
https://developer.aliyun.com/devask/308702.html

浙公网安备 33010602011771号