Oracle合并多列到一行wm_concat
Oracle在group by后合并表的某一列,以逗号隔开
或者合并整个表中的一列 www.2cto.com
函数为wm_concat
用法如下:
把表中一列合并成一行
select wm_concat(songid) from album_song;
把结果里的逗号替换成"|"
select replace(wm_concat(songid),',','|') from album_song;
效果3:按ID分组合并name
select albumid,wm_concat(songid) name from album_song group by albumid;
oracle 11g后又新增了一个函数listagg,功能类似
select albumid,listagg(songid,',') within group (order by albumid) albumid from album_song where albumid!=1 group by albumid