【问题标题】:Is there an equivalent of SQL "FOR XML" in Snowflake?Snowflake 中是否有等效的 SQL“FOR XML”?
【发布时间】:2022-01-02 04:26:01
【问题描述】:
我有一个 SQL 查询,它将一个表中的多个结果组合成一行有序列表结果集。
表A
select * from TableA for xml raw(''), root('ol'), elements, type
输出:
<ol><li>ABC</li><li>DEF</li></ol>
希望在 Snowflake 中实现相同的结果
【问题讨论】:
标签:
snowflake-cloud-data-platform
for-xml
【解决方案1】:
Snowflake 中没有内置的 XML 构造函数,但对于简单的 XML 格式,您可以使用 listagg 和串联来生成 XML:
create or replace temp table T1(COL1 string);
insert into T1 (COL1) values ('ABC'), ('DEF');
select '<ol><li>' || listagg(COL1, '</li><li>') || '</li></ol>' from T1;