将密钥放入Sqlserver 2017中的JSON字段中

问题描述 投票:0回答:2

我在Sqlserver 2017中的类型为NVARCHAR(MAX)的列中有此Json

{
    "coreTimes": {
        "TMP_CLINICAL_TIMES_ANESTHESIOLOGY_OUT_DATETIME": {
            "value": 1
        },
        "TMP_CLINICAL_TIMES_ANESTHESIOLOGY_IN_DATETIME": {
            "value": 2
        },
        "TMP_CLINICAL_TIMES_SURGICAL_OUT_DATETIME": {
            "value": 3
        },
        "TMP_CLINICAL_TIMES_ROOM_IN_DATETIME": {
            "value": 4
        },
        "TMP_CLINICAL_TIMES_ROOM_OUT_DATETIME": {
            "value": null
        },
        "TMP_CLINICAL_TIMES_BLOCK_OUT_DATETIME": {
            "value": null
        },
        "TMP_CLINICAL_TIMES_BLOCK_IN_DATETIME": {
            "value": null
        },
        "TMP_CLINICAL_TIMES_SURGICAL_IN_DATETIME": {
            "value": null
        }
    }
}

我需要这个结果:

Column
{"value":1}
{"value":2}
{"value":3}
{"value":4}
{"value":null}
{"value":null}
{"value":null}

如果json属性可以动态更改(键'coreTimes'已固定),我可以使用哪个sqlserver 2017函数来获得此结果?

在oracle中我已解决

 SELECT res.*
 FROM sopinterventionsaux   ,
      JSON_TABLE ( operating_times, '$.coreTimes.*'
           COLUMNS (
              value VARCHAR2 ( 2000 ) FORMAT JSON PATH '$'
                    )
                ) res

在后期:

select value from table, jsonb_each(column-> 'coreTimes')

在sqlserver中??

sql json sql-server key nvarchar
2个回答
0
投票

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.