Sql server 将xml变量转换为列
我通过将XML列值分配给XML变量来分解XML,然后执行以下操作:Sql server 将xml变量转换为列,sql-server,xml,Sql Server,Xml,我通过将XML列值分配给XML变量来分解XML,然后执行以下操作: select s.property.value('@name[1]', 'varchar(100)') as name1 ,s.property.value('@value[1]', 'varchar(100)') as value1 from @s1.nodes('//properties/property') as s(property) 其中@s1是变量 如何直接针对表2008 R2中的XML列使用此语法
select s.property.value('@name[1]', 'varchar(100)') as name1
,s.property.value('@value[1]', 'varchar(100)') as value1
from @s1.nodes('//properties/property') as s(property)
其中@s1是变量
如何直接针对表2008 R2中的XML列使用此语法 您需要交叉应用,然后选择以下值:
create table #xmltable (
x xml
)
insert #xmltable (x) values ('<xml><properties><property name="name1" value="value1" /><property name="name2" value="value2" /></properties></xml>')
select p.value('@name', 'varchar(100)') as name,
p.value('@value', 'varchar(100)') as value
from #xmltable xt
cross apply xt.x.nodes('//properties/property') t(p)
drop table #xmltable