oracle的 listagg() WITHIN GROUP () 行转列函数的使用

之前在oracle11g中使用的wm_concat()函数,因数据库版本升级,找不到wm_concat()函数,故使用listagg() WITHIN GROUP ()

原查询语句,行转列:

SELECT to_char(substr(replace(wm_concat(cb.chectoutinfo), ',', ''),1,2000))
FROM ContributionTemp cb
WHERE cb.expandfield4 = v_importbatchno;

升级后查询语句

SELECT listagg(cb.chectoutinfo,'')within group (order by cb.contrilsid)
FROM ContributionTemp cb
WHERE cb.expandfield4 = v_importbatchno;

author:su1573

猜你喜欢

转载自blog.csdn.net/su1573/article/details/104744299