我当前的请求是
SELECT [JSON] = (SELECT [Name] FROM OPENJSON(MyJsonColumn) WITH ([Name] nvarchar(50) '$.Name') for json path) from MyTable
问题是它用[{"Name":"Value"}]
填充了结果中的JSON列,但我希望它是{"Name":"Value"}
。为什么会发生这种情况,我该怎么办才能解决问题?
我尝试使用$[0]
从此查询的结果中提取JSON_VALUE
,但它返回了我NULL
答案 0 :(得分:0)
我正在寻找的查询是
SELECT [JSON] = (SELECT [Name] FROM OPENJSON(MyJsonColumn) WITH ([Name] nvarchar(50) '$.Name') for json path, WITHOUT_ARRAY_WRAPPER) from MyTable
Shnugo在评论我的问题时,这里有更多关于WITHOUT_ARRAY_WRAPPER的信息