问题描述
我在表中有此数据:
{ "keys": [ "00170000007u8uJ" ] }
我只需要在sql Server 2016 select查询中提取值00170000007u8uJ
。
解决方法
这应该做
declare @json nvarchar(max)=N'{ "keys": [ "00170000007u8uJ" ] }';
select [value] from openjson(json_query(@json,N'$.keys'));
如果JSON在表中,则应这样
create table #temp_json(json_col nvarchar(max));
insert #temp_json(json_col) values (N'{ "keys": [ "00170000007u8uJ" ] }');
select [value]
from
#temp_json tj
cross apply
openjson(json_query(tj.json_col,N'$.keys'));