如果我有如下所示的XML :(作为XML变量命名为@nodes)
<Nodes>
<Item>Item 1</Item>
<Item>Item 2</Item>
<Item>Item 3</Item>
</Nodes>
我还有我正在寻找的项目的索引(例2)。如何使用查询获取值“项目2”?
我一直在尝试这样的事情:
SELECT
@result = @nodes.value('(/Nodes/Item)[2]', 'nvarchar(255)')
但我似乎所能回来的只是NULL
答案 0 :(得分:1)
你的方法适合我。
以下是我将XML分配给变量的方法。
declare @nodes as xml
set @nodes = '<Nodes>
<Item>Value 5</Item>
<Item>Localhost</Item>
<Item>Unrouteable - 10.x.x.x</Item>
<Item>Unrouteable - 172.16-31.x.x</Item><Item>Unrouteable - 192.168.x.x</Item>
</Nodes>'
SELECT
@nodes.value('(/Nodes/Item)[2]', 'nvarchar(255)')