在oracle中使用“with as”和“listagg”时发生错误

时间:2014-04-22 08:40:29

标签: sql oracle

我已经运行了如下的sql,但是出现了错误,任何人都可以帮助我吗?

with t
as (
select 'a' as p,'a' as n from dual
union 
select 'b','a' from dual
union 
select 'c','a' from dual
union 
select 'd','b' from dual
union 
select 'e','b' from dual
union 
select 'f','b' from dual
)
select listagg(p,',') within group(order by n) from t

感谢。

1 个答案:

答案 0 :(得分:1)

您在Oracle 10G中没有listagg。要么像Frank提到的那样在Oracle 11GR2中尝试它。它工作正常,没有任何错误。

或者有一些替​​代方案,例如wm_concatxmlagg

我个人更喜欢xmlagg功能超过wm_concat