开发者社区> 问答> 正文

如何在sql中循环json数组以选择特定索引的值

如何在sql中循环json数组以选择特定索引的值

展开
收起
贺贺_ 2019-12-04 21:55:17 574 0
1 条回答
写回答
取消 提交回答
  • 示例数据

    { "type": "MultiPolygon", 
        "coordinates": [
            [
                [[40, 40], [20, 45], [45, 30], [40, 40]]
            ], 
            [
                [[20, 35], [10, 30], [10, 10], [30, 5], [45, 20], [20, 35]], 
                [[30, 20], [20, 15], [20, 25], [30, 20]]
            ]
        ]
    }
    
    

    Sql 代码

    SELECT polygons.[key] as polygon, lines.[key] as line, x, y
    FROM OPENJSON(@multipolygon, '$.coordinates') as polygons
           CROSS APPLY OPENJSON(polygons.value) as lines
                  CROSS APPLY OPENJSON(lines.value)
                         WITH (x float '$[0]', y float '$[1]')
    
    2019-12-04 21:56:06
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载