欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

理解Oracle的listagg函数:将多行数据按顺序合并为字符串(与wm_concat的不同之处)

最编程 2024-08-08 13:01:44
...

场景:

使用wm_concat函数时,会发现无法对其拼接的字符串进行排序

使用listagg函数可实现按排序进行字符串拼接

select myGroup, listagg(myStr, ',') within group(order by myNo) myStrs
  from myTable
 group by myGroup;

描述:

listagg() 两个参数:聚合列 与 分隔符(无分隔符将直接拼接)
within group(order by xx) 排序
group by  分组(需要进行分组时使用)

 

 

 

 

备注:

wm_concat为wmsys用户下函数,为oracle非公开函数;

日常使用中,建议使用listagg函数