SQL SERVER 将XML变量转为JSON文本

废话不多说了,直接给大家贴代码了。

-- create function create function [dbo].[fnXmlToJson] (@XmlData xml) returns nvarchar(max) as begin return (select stuff( (select * from (select ',{'+ stuff( (select ',"'+ coalesce(b.c.value('local-name(.)', 'NVARCHAR(MAX)'),'')+'":"'+ b.c.value('text()[]','NVARCHAR(MAX)') +'"' from x.a.nodes('*') b(c) for xml path(''),type).value('(./text())[]','NVARCHAR(MAX)'),,,'') +'}' from @XmlData.nodes('/root/*') x(a)) JSON(theLine) for xml path(''),type).value('.','NVARCHAR(MAX)' ) ,,,'')); end; go -- test table and data create table [dbo].[PivotExample] ( [Country] [nvarchar]() null ,[Year] [smallint] not null ,[SalesAmount] [money] null ) on [PRIMARY]; insert into [dbo].[PivotExample]values('Australia', , .); insert into [dbo].[PivotExample]values('Germany', , .); insert into [dbo].[PivotExample]values('United States', , .); insert into [dbo].[PivotExample]values('France', , .); declare @xml xml; set @xml=(select top * from [dbo].[PivotExample] for xml path, root); select dbo.fnXmlToJson(@xml); --return string {"Country":"Australia","Year":"","SalesAmount":"."}, {"Country":"Germany","Year":"","SalesAmount":"."}, {"Country":"United States","Year":"","SalesAmount":"."}, {"Country":"France","Year":"2008","SalesAmount":"922179.0400"}

时间: 2024-10-31 01:08:10

SQL SERVER 将XML变量转为JSON文本的相关文章

SQL SERVER 将XML变量转为JSON文本_MsSql

废话不多说了,直接给大家贴代码了. -- create function create function [dbo].[fnXmlToJson] (@XmlData xml) returns nvarchar(max) as begin return (select stuff( (select * from (select ',{'+ stuff( (select ',"'+ coalesce(b.c.value('local-name(.)', 'NVARCHAR(MAX)'),'')+'&

SQL Server中XML与JSON应用比较

title: SQLServer · 特性分析 · SQL Server中XML与JSON应用比较 author: 石沫 背景 SQL Server是一种强大的数据库引擎,不仅性能卓越,稳定,功能还很强大,SQL Server 2016中已经支持JSON.这让我想到以前工作中经常使用的SQL XML,也对比一下他们几个关键领域的应用方法.这两种SQL特性,在实际的工作中也是常用的功能,特别是JSON在最近发展非常火爆,SQL Server也不落后,很快就在SQL Server2016支持. 广义

SQLServer · 特性分析 · SQL Server中XML与JSON应用比较

title: SQLServer · 特性分析 · SQL Server中XML与JSON应用比较 author: 石沫 背景 SQL Server是一种强大的数据库引擎,不仅性能卓越,稳定,功能还很强大,SQL Server 2016中已经支持JSON.这让我想到以前工作中经常使用的SQL XML,也对比一下他们几个关键领域的应用方法.这两种SQL特性,在实际的工作中也是常用的功能,特别是JSON在最近发展非常火爆,SQL Server也不落后,很快就在SQL Server2016支持. 广义

SQL Server 2000 XML之七种兵器

server|xml XML,已成为近来最热门的Web技术,它是SQL Server 2000中的重要部分.本文将综合七条SQL Server 2000中最重要的XML综合特性组成XML之七种兵器. 兵器之一:FOR XML 在SQL Server 2000中,标准的T-SQL SELECT语句包括FOR XML子句,它以XML文档形式返回一个查询结果.新的FOR XML子句有三种模式--RAW,AUTO,和EXPLICIT,每个都能对XML文档格式提供附加标准的控制. 下面首先介绍"FOR X

SQL Server解析XML数据的方法详解_MsSql

本文实例讲述了SQL Server解析XML数据的方法.分享给大家供大家参考,具体如下: --5.读取XML --下面为多种方法从XML中读取EMAIL DECLARE @x XML SELECT @x = ' <People> <dongsheng> <Info Name="Email">dongsheng@xxyy.com</Info> <Info Name="Phone">678945546</

浅析sql server对xml简单操作教程

SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和参数.为了更好地支持 XML 模型特征(例如文档顺序和递归结构),XML 值以内部格式存储为大型二进制对象 (BLOB). 用户将一个XML数据存入数据库的时候,可以使用这个XML的字符串,SQL Server会自动的将这个字符串转化为XML类型,并存储到数据库中. 随着SQL Server 对XML字段的支持,相应的,T-SQL语句

SQL Server解析XML数据的方法详解

本文实例讲述了SQL Server解析XML数据的方法.分享给大家供大家参考,具体如下: --5.读取XML --下面为多种方法从XML中读取EMAIL DECLARE @x XML SELECT @x = ' <People> <dongsheng> <Info Name="Email">dongsheng@xxyy.com</Info> <Info Name="Phone">678945546</

SQL Server和XML的集成

server|sql|xml XML可谓最新的数据存储解决方案了.XML相比HTML给予了Web开发人员更大的编程灵活性.这种新技术驱动开发机构尝试把XML同自己的产品集成起来.微软就是采取如此举措的先驱者.微软公司在开发Internet产品的时候一度慢慢腾腾,现在可就不同了.最近一位微软公司的高级职员就这样说:"你要给我们一刀,伤口里出来的尽是XML."也许形容得有点过分,但事实确实是这样的:微软的几乎所有产品中都能看到XML的身影.举个例子:微软是如何在其SQL Server产品线

SQL Server和XML的集成(1)

server|xml SQL Server和XML的集成 作者: BUILDER.COMWednesday, June 19 2002 10:11 AM XML可谓最新的数据存储解决方案了.XML相比HTML给予了Web开发人员更大的编程灵活性.这种新技术驱动开发机构尝试把XML同自己的产品集成起来.微软就是采取如此举措的先驱者.微软公司在开发Internet产品的时候一度慢慢腾腾,现在可就不同了.最近一位微软公司的高级职员就这样说:"你要给我们一刀,伤口里出来的尽是XML."也许形容