You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用FOR JSON PATH将SQL表每行数据转为独立JSON对象

解决SQL Server中每行生成独立JSON对象的问题

这个问题我之前也碰到过,SQL Server的FOR JSON PATH默认确实会把所有查询结果打包成一个JSON数组,要实现每行对应一个独立的JSON对象,只要对每一行数据单独生成JSON就可以了,具体做法如下:

解决方案代码

SELECT (SELECT [code] FOR JSON PATH, WITHOUT_ARRAY_WRAPPER) AS json_output
FROM feature;

原理说明

  • 原语句SELECT [code] FROM feature FOR JSON PATH会把所有行的JSON对象包裹在数组[]中,返回一个包含多个对象的数组。
  • 我们通过子查询(SELECT [code] FOR JSON PATH, WITHOUT_ARRAY_WRAPPER)对原表的每一行单独生成JSON:
    • FOR JSON PATH负责将当前行的code字段转为JSON对象
    • WITHOUT_ARRAY_WRAPPER选项会去掉默认添加的数组括号,让结果变成单个独立的JSON对象
  • 最终查询结果的每一行都会对应原表的一行,单元格中是一个格式正确的独立JSON对象,比如:
    {"code":"D5ABX0"}
    {"code":"MKT536"}
    {"code":"WAEX44"}
    

内容的提问来源于stack exchange,提问作者PierekEast

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:12:11