Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 将xml变量转换为列_Sql Server_Xml - Fatal编程技术网

Sql server 将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列使用此语法

我通过将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列使用此语法

您需要交叉应用,然后选择以下值:

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