在我的数据库中,我有一列存储 JSON。JSON 看起来像这样:
{
"views": [
{
"id": "1",
"sections": [
{
"id": "1",
"isToggleActive": false,
"components": [
{
"id": "1",
"values": [
"02/24/2021"
]
},
{
"id": "2",
"values": []
},
{
"id": "3",
"values": [
"5393",
"02/26/2021 - Weekly"
]
},
{
"id": "5",
"values": [
""
]
}
]
}
]
}
]
}
我想创建一个迁移脚本,它将从此 JSON 中提取一个值并将它们存储在自己的列中。
在上面的 JSON 中,在那个数组components
中,我想从“3”中提取第二个值(除其他外,这是一个很好的例子)。因此,我想提取值“02/26/2021 - Weekly”以存储在自己的列中。component
ID
我正在查看JSON_VALUE 文档,但我只看到了为 json 属性指定索引的示例。我不知道我需要什么样的 json 路径。这甚至可以用 JSON_VALUE 做吗?
编辑:为了澄清,视图和部分组件可以具有静态数组索引,因此我可以为它们使用 views[0].sections[0] 。目前,这就是我的 SQL 查询的全部内容:
SELECT
*
FROM OPENJSON(@jsonInfo, '$.views[0].sections[0]')