【问题标题】:Get XML Node while using tsql使用 tsql 时获取 XML 节点
【发布时间】:2011-05-22 14:00:29
【问题描述】:
我想知道,是否有人可以帮助如何使用 TSQL 获取节点名称或 XML 变量。
<ROOT>
<IDS>
<ID>
<NAME>bla1</NAME>
<AGE>25</AGE>
</ID>
<ID>
<NAME>bla2</NAME>
<AGE>26</AGE>
</ID>
</IDS>
</ROOT>
查询后,我应该能够得到节点名称:NAME,AGE
我的 SQL 服务器是 MSSQL 2005。
【问题讨论】:
标签:
sql
sql-server
xml
sql-server-2005
tsql
【解决方案1】:
这将为您提供第一个 ID 节点的子节点名称:
DECLARE @x xml
SET @x = '<ROOT>
<IDS>
<ID>
<NAME>bla1</NAME>
<AGE>25</AGE>
</ID>
<ID>
<NAME>bla2</NAME>
<AGE>26</AGE>
</ID>
</IDS>
</ROOT>'
SELECT T.c.value('local-name(.)', 'varchar(50)')
FROM @x.nodes('/ROOT/IDS/ID[1]/*') T(c)