sql-server – 以逗号分隔列表的形式从SQL Server列获取XML节点
发布时间:2021-03-18 21:37:43 所属栏目:MsSql教程 来源:网络整理
导读:我有一个存储在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 – 它也适合你吗? (编辑:ASP站长) 【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。 |
相关内容
未处理完善
-
无相关信息
最新更新