文章首发于 https://donlex.cn
一些在使用springcloud和mybatis-plus中遇到的小问题以及解决方法
oracle 列转行 LISTAGG和WM_CONCAT
对于将一列多值合并成一行问题,oracle提供了wmsys.wm_concat
和listagg
函数处理此问题。但是使用那一个函数具体得看数据库的版本
WMSYS.WM_CONCAT: 依赖WMSYS用户
LISTAGG: 11g2才提供的函数,不支持distinct
select listagg(多行转单行的列,分隔符) within group(order by 按哪一列分组) from tmp t group by 按哪一列分组
用法就像聚合函数一样,通过Group by语句,把每个Group的一个字段,拼接起来,非常方便
例子:
select *