在 SQL 服务器中打开 Json 一个 Json 字段到 table

Open Json a Json field in SQL Server to table

我在 SQL 服务器中有一个 table,其中一行包含一个 Json 列 - 像这样:

响应文本 RequestId
{"LosUnqCod":0,"LosMidId":23} 96173722
{"LosUnqCod":1,"LosMidId":5} 96173721

我想要一个table这个形状:

LosUnqCod LosMidId RequestId
0 23 96173722
1 5 96173721

如何打开这个json?

大家好我找到了我的答案并想与任何和我有同样问题的人分享

  SELECT        
    
        reqTbl.LosUnqCod ,
        a.RequestId
    
   FROM   [dbo].[a]  CROSS APPLY      
                     OPENJSON( dbo.a.responsetext) 
                     WITH (
                        LosUnqCod nvarchar(50)
                        ) AS reqTbl

如果每 SQL 行只有一个 JSON 对象(不是数组),则不必使用 OPENJSON,您可以使用 JSON_VALUE :

SELECT        
    JSON_VALUE(a.responsetext, '$.LosUnqCod') LosUnqCod,
    JSON_VALUE(a.responsetext, '$.LosMidId') LosMidId,
    a.RequestId
FROM [dbo].[a];