MSSQL中解析JSON特殊字符
DECLARE @json NVARCHAR(MAX) = N'{ "data": {}, "select": {"name": "ECOB000000RV"}, "input": {"input1": []}, "cascader": {"mycascader": [1, 2, 3]}, "datePicker": {}, "dateSelect": {}, "linkInfo": { "设备": "6FZLC-105#", "具体名称": "6FZLC-105#_总数量", "值": "1300", "时间": "2026/1/30 10:26:42" } }' -- 方法1:使用带引号的路径 SELECT JSON_VALUE(@json, '$."linkInfo"."设备"') AS 设备值 -- 方法2:使用单引号包裹整个路径 SELECT JSON_VALUE(@json, '$.linkInfo."设备"') AS 设备值 -- 方法3:使用方括号表示法--测试不行 SELECT JSON_VALUE(@json, '$.linkInfo["设备"]') AS 设备值
重要提醒:
-
JSON 字符串需要 N 前缀:
N'...'确保正确处理 Unicode 字符 -
中文键名需要引号:路径中的中文字符必须用双引号包裹
-
路径语法规则:
-
普通英文键名:
$.key1.key2 -
特殊字符键名:
$."key-1"."key.2"或$["key-1"]["key.2"] -
中文字符键名:
$."设备"."名称"或$["设备"]["名称"]
-

浙公网安备 33010602011771号