我正在尝试在SQL Server中解析以下XML以获取所有3个ID。
<Configuration>
<ID>1000</ID>
<ID>1001</ID>
<ID>1002</ID>
</Configuration>
使用查询语句
SELECT CONFIGURATION.value('/', 'varchar(200)') as SID FROM SCHEDULE
我得到的结果是100010011002,但我希望把结果以列或CSV格式显示。
非常感谢任何帮助。
我正在尝试在SQL Server中解析以下XML以获取所有3个ID。
<Configuration>
<ID>1000</ID>
<ID>1001</ID>
<ID>1002</ID>
</Configuration>
使用查询语句
SELECT CONFIGURATION.value('/', 'varchar(200)') as SID FROM SCHEDULE
我得到的结果是100010011002,但我希望把结果以列或CSV格式显示。
非常感谢任何帮助。
declare @xml as xml
set @xml =
'<Configuration>
<ID>1000</ID>
<ID>1001</ID>
<ID>1002</ID>
</Configuration>'
select
x.i.value('.', 'int') as ID
from @xml.nodes('/Configuration/ID') as x(i)
text()
节点进行解析会更快(快三倍)。select
x.i.value('.', 'int') as ID
from @xml.nodes('/Configuration/ID/text()') as x(i)