且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

T-SQL XML 查询,如何将匹配的节点分成单独的行?

更新时间:2023-02-05 20:26:49

给你:

create table #t (data xml)


insert #t values ('
<parent>
   <child>
      <name>Sally</name>
   </child>
   <child>
      <name>Bobby</name>
   </child>
</parent>
')


insert #t values ('
<parent>
   <child>
      <name>Fred</name>
   </child>
   <child>
      <name>Bill</name>
   </child>
</parent>
')


select C.* from #t 
cross apply 
 (select name.value('name[1]', 'varchar(255)') as [Name] 
    from data.nodes('//parent/child') as c(name)) as C