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

oracle中有关listagg函数的使用-问题拓展

最编程 2024-08-08 12:59:19
...

I:字段拼接过程中以0开头的小数,开头的0消失

解决方案:
加上to_char(字段,’fm9999999999999990.00’) (查看表结构设计,这里的类型是number(16,2),所以设置前面小数点前面最多16位,后面保留2位)

II:listagg聚合函数去重

使用正则替换方式去重(仅适用于oracle字符串大小比较小的情况)

regexp_replace(listagg(sfaaua001,',') within group(order by sfea002),'([^,]+)(,\\1)*(,|$)','\\1\\3') sfaaua001

参考资料:
1、文中的示例用表创建语句:https://blog.****.net/bananasssss/article/details/121714632?spm=1001.2014.3001.5501