我正在尝试在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格式。
任何帮助都将得到应用。
使用MS SQL Server,这将为您提供行。
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()节点上切碎的速度要快得多(三倍)。
text()
select x.i.value('.', 'int') as ID from @xml.nodes('/Configuration/ID/text()') as x(i)