oracle WMSYS.WM_CONCAT 函数转为listagg
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle WMSYS.WM_CONCAT 函数转为listagg相关的知识,希望对你有一定的参考价值。
诸位大神,请帮忙把下面这个sql中的 WMSYS.WM_CONCAT 函数转为listagg
SELECT r.*,
(SELECT g.group_name
FROM mon_evt_rule_group g
WHERE g.id = r.rule_group_id)
AS rule_group_name,
(SELECT TO_CHAR (WMSYS.WM_CONCAT (s.name))
FROM mon_evt_selector s
WHERE INSTR (r.selector_relations, '''' || s.id || '''') > 0)
AS selector_name,
(SELECT u.user_name
FROM mon_sys_user u
WHERE u.it_code = r.create_person_id)
AS create_person_name
FROM mon_evt_rule r
WHERE 1 = 1
ORDER BY r.RULE_GROUP_ID DESC
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "WMSYS.WM_CONCAT_IMPL", line 30
现在报这个错,我在网上搜说是可以用listagg替换WMSYS.WM_CONCAT,我自己写了几个都不行,还请各位大神帮忙啊
你写的这是什么啊?
本回答被提问者和网友采纳以上是关于oracle WMSYS.WM_CONCAT 函数转为listagg的主要内容,如果未能解决你的问题,请参考以下文章
oracle中WMSYS.WM_CONCAT 函数关系的列出现乱码
oracle plsql wmsys.wm_concat()函数问题
linux下oracle缺少wmsys.wm_concat函数,执行创建视图的时候报错:ORA-00904