1

在 SQL Server 2008 中未分配架构的 XmlData 列中,如何在特定节点级别提取第一项?例如,我有:

SELECT 
XmlData.value('//*/*[1]','NVARCHAR(6)')
FROM table
where XmlData.Exist('//*/*[1]') = 1

我认为这不起作用,因为如果在第二级有多个具有不同名称的节点,则可以返回每个节点中的第一个(并且value()需要选择一个单例。因为我不知道任何节点的名称是什么节点将是,有没有办法总是选择第一个节点在第二级?

4

1 回答 1

4

我通过链接 Xquery.query().value()

XMLDATA.query('//*/*[1]').value('.[1]','NVARCHAR(6)')

这将返回第一个节点的值,并且非常适合我的需要。

于 2009-10-05T18:18:15.640 回答