标签:
使用for json子句把查询结果作为json字符串导出,将作为sql server 2016中首先可用的一个特性。如果你熟悉for xml子句,那么将很容易理解for json:
select ccolumn, expression, column as alias from table1, table2, table3 for json [auto | path]
如果你把for json子句添加到T-SQL Select查询语句的最后,SQL Server将会把结果格式化为JSON字符串之后在返回到客户端。每一行数据将会格式化为一个json对象,每一个数据字段将会成为行对象的值,列名或者列的别名会作为行对象的键。我们有两种类型的for json子句:
如果你用过PostgreSQL中涉及到JSON的函数和操作符,你会注意到,FOR JSON子句类等价于PostgreSQL中的JSON创建函数比如row_to_json或json_object。FOR JSON子句的主要目的是根据JSON规范把变量、列格式化为JSON对象。比如:
set @json = (select 1 as firstKey, getdate() as dateKey, @someVar as thirdKey for json path) -- result is : {"firstKey": 1, "dateKey": "2016-06-15 11:35:21", "thirdKey": "Content of variable"}
FOR JSON子句主要应用场景:
在Sql Server 2016中使用For Json子句把数据作为json格式导出
标签:
原文地址:http://www.cnblogs.com/Betree/p/5168768.html