3

谁能告诉我 Local.name(.) xquery 函数是如何工作的。关于 sql 构造问题,我在论坛上发布了一个问题,他们给了我答案。使用 Local.name(.) xquery 函数的地方,但语法对我来说不是很清楚。

;with cte as
(
select x.i.value('local-name(.)','nvarchar(MAX)') as colname
,x.i.value('.','nvarchar(max)') as data
from @x.nodes('/Record/DELETED/*') as x(i))

这条线是什么意思 xivalue('local-name(.)','nvarchar(MAX)') as colname 为什么 'local-name(.)' 什么是 local-name (.) 这是什么意思。再次将 xivalue('.','nvarchar(max)') 作为数据,请详细解释这两行。我不是高级用户。多谢。

请指导我。谢谢

4

1 回答 1

7

local-name(.)将为您提供当前节点的节点名称。如果您使用 local-name(..) 您将获得父节点的节点名称。

x.i.value('.','nvarchar(max)')将为您提供当前节点的内容。

@x.nodes('/Record/DELETED/*')为您提供/Record/Deleted.

因此,您的查询将为您提供 中所有节点的名称/值列表/Record/Deleted

于 2011-06-01T12:59:40.657 回答