gpt4 book ai didi

SQL 和转义的 XML 数据

转载 作者:数据小太阳 更新时间:2023-10-29 02:27:52 25 4
gpt4 key购买 nike

我有一个混合了转义和非转义 XML 的表格。当然,我需要的数据被转义了。例如,我有:

<Root>
<InternalData>
<Node>
&lt;ArrayOfComment&gt;
&lt;Comment&gt
&lt;SequenceNo&gt;1&lt;/SequenceNo&gt;
&lt;IsDeleted&gt;false&lt;/IsDeleted&gt;
&lt;TakenByCode&gt;397&lt;/TakenByCode&gt;
&lt;/Comment&gt
&lt;/ArrayOfComment&gt;
</Node>
</InternalData>
</Root>

可以看到,Node标签中的数据全部转义了。我可以使用查询来获取 Node 数据,但如何在 SQL 中将其转换为 XML 以便对其进行解析和分解?我对在 SQL 中使用 XML 还很陌生,我似乎找不到这方面的任何示例。

谢谢

最佳答案

您没有提供有关最终目标的足够信息,但这会让您非常接近。 仅供引用 - 你少了两个;都在 comment>

之后
declare @xml xml
set @xml = '
<Root>
<InternalData>
<Node>
&lt;ArrayOfComment&gt;
&lt;Comment&gt;
&lt;SequenceNo&gt;1&lt;/SequenceNo&gt;
&lt;IsDeleted&gt;false&lt;/IsDeleted&gt;
&lt;TakenByCode&gt;397&lt;/TakenByCode&gt;
&lt;/Comment&gt;
&lt;/ArrayOfComment&gt;
</Node>
</InternalData>
</Root>
'

select convert(xml, n.c.value('.', 'varchar(max)'))
from @xml.nodes('Root/InternalData/Node/text()') n(c)

输出

<ArrayOfComment>
<Comment>
<SequenceNo>1</SequenceNo>
<IsDeleted>false</IsDeleted>
<TakenByCode>397</TakenByCode>
</Comment>
</ArrayOfComment>

结果是一个 XML 列,您可以将其放入变量或直接交叉应用以从 XML 片段中获取数据。

关于SQL 和转义的 XML 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4927300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com