sql server xml查询?

时间:2011-03-11 17:34:48

标签: xml sql-server-2005

如果我有如下所示的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

1 个答案:

答案 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)')