xmlserialize()
是一个系统函数,用于从 xml
数据生成字符串值。
xmlserialize()
在 PostgreSQL 8.3 中添加。
用法
PostgreSQL 16 及更高版本
XMLSERIALIZE ( { DOCUMENT | CONTENT } value AS type [ [ NO ] INDENT ] )
PostgreSQL 15 及更早版本
XMLSERIALIZE ( { DOCUMENT | CONTENT } value AS type )
type
参数可以是以下之一
character
/char
character varying
/varchar
text
请注意,xmlserialize()
是一个 SQL 标准函数,用于
更改历史
- PostgreSQL 16
- 添加了对选项
[NO] INDENT
的支持(提交 483bdb2a)
- 添加了对选项
- PostgreSQL 8.3
- 添加(提交 8c1de5fb)
示例
xmlserialize()
的基本用法示例
postgres=# SELECT xmlserialize( DOCUMENT $$<foo><bar><baz boo="1">hogehoge</baz></bar></foo>$$ AS TEXT ); xmlserialize --------------------------------------------------- <foo><bar><baz boo="1">hogehoge</baz></bar></foo> (1 row)
使用 INDENT
选项(PostgreSQL 16 及更高版本)
postgres=# SELECT xmlserialize( DOCUMENT $$<foo><bar><baz boo="1">hogehoge</baz></bar></foo>$$ AS TEXT INDENT ); xmlserialize --------------------------------- <foo> + <bar> + <baz boo="1">hogehoge</baz>+ </bar> + </foo> + (1 row)
参考
- PostgreSQL 文档: 创建 XML 值
另见
xmlparse()