You need to enable JavaScript to run this app. SQL Server如何在查询中更便捷地构建JSON格式结果列
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server如何在查询中更便捷地构建JSON格式结果列

SQL查询内置JSON构建方案(适配SQL Server环境)

你当前使用的字符串拼接方式存在特殊字符转义遗漏、类型处理不规范、维护成本高等问题,SQL Server 2016及以上版本已经内置了原生JSON构造能力,完全可以替代手动拼接方案:

方案1:SQL Server 2022+/Azure SQL 专用(最直观)

直接使用JSON_OBJECT函数,传入键值对即可直接生成标准JSON对象:

SELECT 
    ProductCode,
    JSON_OBJECT('Product': Product, 'Price': Price) AS Details     
FROM  
    #tmp

函数会自动完成所有JSON规范处理:

  • 字段值含双引号、反斜杠、换行等特殊字符时自动转义
  • 自动保留数据类型(数字类型不会被强制套上字符串引号)
  • 无需手动处理拼接符号,增减字段直接修改函数内的键值对即可

方案2:SQL Server 2016~2019 兼容方案

使用FOR JSON PATH语法搭配WITHOUT_ARRAY_WRAPPER参数生成单个JSON对象:

SELECT 
    ProductCode,
    (SELECT Product, Price FOR JSON PATH, WITHOUT_ARRAY_WRAPPER) AS Details     
FROM  
    #tmp

输出结果和手动拼接完全一致,且原生兼容JSON所有规范,不会出现语法错误。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 14:09:03