【问题标题】:Is there an equivalent of SQL "FOR XML" in Snowflake?Snowflake 中是否有等效的 SQL“FOR XML”?
【发布时间】:2022-01-02 04:26:01
【问题描述】:

我有一个 SQL 查询,它将一个表中的多个结果组合成一行有序列表结果集。

表A

Col1
ABC
DEF
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;
    

    【讨论】:

    • 谢谢格雷格。我得出了同样的结论!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-08
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多