gpt4 book ai didi

mysql - 如何在 SQL 中从 xml 中检索所有值

转载 作者:可可西里 更新时间:2023-11-01 08:49:32 25 4
gpt4 key购买 nike

我是 SQL 的新手,遇到了一个非常常见的场景。我的存储过程中有一个带有嵌套子项的 xml 作为输入参数

    <XML>
<Id>1</Id>
<Age>1</Age>
<Address>Test</Address>
.
.
<Days>
<long>1</long>
<long>2</long>
<long>3</long>
<long>7</long>
</Days>
</XML>

我可以通过 XML 标签获取数据

Id = t.Xml.value('(./Id)[last()]','int')

但我不知道如何在 XML/Days 中选择所有长值。我试过了

 long = t.UserXml.value('.','int')

它返回所有值 1237 但这并没有解决我的问题。我需要不同行中的值,并且需要将长值插入到另一个表中。

请让我知道可能的解决方案。谢谢

最佳答案

Days on Sqlserver 的解决方案可能是

DECLARE @XML XML
SET @XML='<XML>
<Id>1</Id>
<Age>1</Age>
<Address>Test</Address>
<Days>
<long>1</long>
<long>2</long>
<long>3</long>
<long>7</long>
</Days>
</XML>'

SELECT
x.y.value('text()[1]', 'int') as xx
FROM @xml.nodes('XML/Days/long') x(y)

关于mysql - 如何在 SQL 中从 xml 中检索所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17668327/

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