SQL Server SELECT到JSON功能
我想将SELECT
语句的结果输出为JSON对象。
我希望这是一个 而不是一个 !
例如,下表Users
id name active1 Bob Jones 1
2 John Smith 0
将这样返回:
[{"id":1,"name":"Bob Jones","active":1},{"id":2,"name":"John Smith","active":0}]
提前致谢。
回答:
从SQL Server 2016开始,您可以使用for json
:
declare @t table(id int, name nvarchar(max), active bit)insert @t values (1, 'Bob Jones', 1), (2, 'John Smith', 0)
select id, name, active
from @t
for json auto
对于旧版本的SQL Server,您可以使用for xml path
,例如:
select '[' + STUFF(( select
',{"id":' + cast(id as varchar(max))
+ ',"name":"' + name + '"'
+ ',"active":' + cast(active as varchar(max))
+'}'
from @t t1
for xml path(''), type
).value('.', 'varchar(max)'), 1, 1, '') + ']'
输出:
[{"id":1,"name":"Bob Jones","active":1},{"id":2,"name":"John Smith","active":0}]
以上是 SQL Server SELECT到JSON功能 的全部内容, 来源链接: utcz.com/qa/400066.html