xmlconcat()

用于连接 XML 字符串的函数

xmlconcat() 是一个系统函数,用于将 XML 片段连接成单个 XML 内容片段。

xmlconcat()PostgreSQL 8.3 中添加。

用法

xmlconcat ( xml [, ...] ) → xml

NULL 值将被忽略;XML 声明(如果存在)将合并为一个声明(如果可能,参见 文档了解详情);任何编码声明都将被删除。

要连接多行,请使用 xmlagg()

变更历史

示例

xmlconcat() 的基本用法示例

postgres=# SELECT xmlconcat('<bar>foo</bar>','<baz>boo</baz>', '<moo/>');
             xmlconcat              
------------------------------------
 <bar>foo</bar><baz>boo</baz><moo/>
(1 row)

NULL 元素和空字符串将被忽略

postgres=# SELECT xmlconcat('<bar>foo</bar>',NULL,'','<moo/>');
      xmlconcat
----------------------
 <bar>foo</bar><moo/>
(1 row)

除非所有输入元素都为 NULL

postgres=# SELECT xmlconcat(NULL,NULL) IS NULL;
 ?column? 
----------
 t
(1 row)

纯文本字符串将被简单地连接

postgres=# SELECT xmlconcat('foo','bar');
 xmlconcat 
-----------
 foobar
(1 row)

否则,每个输入元素都必须是格式良好的 XML

postgres=# SELECT xmlconcat('<foo>bar', '</foo>');
ERROR:  invalid XML content
LINE 1: SELECT xmlconcat('<foo>bar', '</foo>');
                         ^
DETAIL:  line 1: Premature end of data in tag foo line 1
<foo>bar

编码声明将被剥离

postgres=# SELECT xmlconcat('<?xml version="1.1" encoding="iso-8859-1"?>',
                            '<?xml version="1.1"?><foo>Äthiopien</foo>');
                 xmlconcat
-------------------------------------------
 <?xml version="1.1"?><foo>Äthiopien</foo>
(1 row)

分类

系统函数, XML

另请参阅

xmlagg()

反馈

提交关于“xmlconcat()”的任何评论、建议或更正,请在此处 提交