如何在 google bigquery 中从地理点创建多边形

How to create Polygon from Geo points in google bigquery

我在 bigquery 中有一个 table,其中包含 11 个地理点及其 ID。我想从这些点创建一个多边形。我正在使用以下查询来创建多边形。但出现错误 ST_MakePolygon failed: Invalid polygon loop: Edge 2 has duplicate vertex with edge 7,创建多边形的正确方法是什么?

查询:

Select ST_MAKEPOLYGON(ST_MAKELINE(ARRAY_AGG(ST_GEOGFROMTEXT(wkt_geom)))) as polygons from bd.wari_lockdown_area

Table bd.wari_lockdown_area:

wari_lockdown_area

以下适用于 BigQuery 标准 SQL

您可以使用 ST_CONVEXHULL - 如下例所示

#standardSQL 
SELECT 
    ST_CONVEXHULL(ST_UNION_AGG(ST_GEOGFROMTEXT(wkt_geom))) AS polygons  
FROM 
  `bd.wari_lockdown_area`

如果应用于您问题中的样本数据 - 结果是