Microsoft SQL Server 解析JSON文本

示例

JSON_VALUEJSON_QUERY函数解析JSON文本,并以JSON文本的形式返回标量值或对象/数组。

DECLARE @json NVARCHAR(100) = '{"id": 1, "user":{"name":"John"}, "skills":["C#","SQL"]}'

SELECT
    JSON_VALUE(@json, '$.id') AS Id,
    JSON_VALUE(@json, '$.user.name') AS Name,
    JSON_QUERY(@json, '$.user') AS UserObject,
    JSON_QUERY(@json, '$.skills') AS Skills,
    JSON_VALUE(@json, '$.skills[0]') AS Skill0

结果

ID名称用户对象技能专长技能0
1约翰{“ name”:“ John”}[“ C#”,“ SQL”]C#