[英]Oracle EXTRACT xml in PostgreSQL
我在从Oracle迁移到PostgreSQL的过程中是对的,并且我对以下问题有疑问:
RTRIM(XMLAGG(XMLELEMENT(e,'WZ-'||C.docnum,'; ')
.EXTRACT('//text()') ORDER BY C.docnum).GetClobVal(),'; ') As x
如何在PostgreSQL上转换它? 提前致谢
据我所知,之所以使用XMLAGG
仅是因为Oracle的listag()
无法处理大于4K(或Oracle 12中为32K)的字符串。
所以我认为您想要的是一个简单的方法:
string_agg('WZ-'||c.docnum, '; ' order by c.docnum)
如果docnum
可以为NULL
,则可能需要:
string_agg(concat('WZ-', c.docnum), '; ' order by c.docnum)
因为concat()
会将null
值视为空字符串(如果所涉及的任何值为null
||
将产生null
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.