[英]xquery to return the element name
DECLARE @XML XML
SET @xml = '
<root>
<a>
<DATE_OF_BIRTH> 19871224</DATE_OF_BIRTH>
<DRIVER> MIKE </DRIVER>
</a>
<a>
<DATE_OF_BIRTH> 19881124</DATE_OF_BIRTH>
<DRIVER> TOM </DRIVER>
</a>
<a>
<DATE_OF_BIRTH> 19770601</DATE_OF_BIRTH>
<DRIVER> DAVID </DRIVER>
</a>
</root>'
select x.value('.','varchar(100)')
from @xml.nodes('//a') as T(X)
我想使用xquery返回元素名稱
這樣的結果
出生日期
DRIVER
我怎樣才能做到這一點?
非常感謝你。
使用local-name()
或name()
如果要包括命名空間),所以它應該是
//a/*/local-name()
如果您嘗試以下操作:
select X.query('local-name(.)')
from @xml.nodes('//a/*') as T(X)
它會返回:
DATE_OF_BIRTH
DRIVER
DATE_OF_BIRTH
DRIVER
DATE_OF_BIRTH
DRIVER
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.