1、在 Oracle 数据库进行查询时,如果使用了列转行函数(listagg),并且连接的字符串过长,则可能会报 ORA-01489 问题,图示。
2、通过将 listagg 函数替换为 xmlagg + 垓矗梅吒xmlparse 来解决该问题:listagg 函数用法:listagg(列名, '器皆阄诟分隔符') within group (order by 列名)xmlagg + xmlparse 用法:xmlagg(xmlparse(content 列名||'分隔符') order by 列名).getclobval()
3、执行语句,查看 xmlagg + xmlparse 函数的运行结果,图示,SQL 语句正常执行,没有再报 ORA-01489 的问题。