加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

sql-server – 以逗号脱离列表的情势从SQL Server列获取XML节点

发布时间:2021-03-23 06:08:17 所属栏目:编程 来源:网络整理
导读:我有一个存储在xml列中的数据,必要以逗号脱离的子节点列表.行使下面的剧本,我只能得到“A B C”.请辅佐我行使xquery获

我有一个存储在xml列中的数据,必要以逗号脱离的子节点列表.行使下面的剧本,我只能得到“A B C”.请辅佐我行使xquery获取“A,B,C”(用逗号简朴替代空格没有辅佐,由于我们有内部空格的数据).

create table Temp12345 (col1 xml)
go

insert into Temp12345 (col1)
values('<fd><field i="22"><v>A</v><v>B</v><v>C</v></field></fd>')
go

select col1.value('(/fd/field[@i=22])[1] ','NVarchar(Max)') 
from Temp12345
go

drop table Temp12345
go

办理要领

实行这个:
SELECT
    STUFF((SELECT 
              ',' + fd.v.value('(.)[1]','varchar(10)')
           FROM 
              Temp12345
           CROSS APPLY
              col1.nodes('/fd/field/v') AS fd(v)
           FOR XML PATH('')
          ),1,'')

这给了我A,C – 它也得当你吗?

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读