如何在 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`
如果应用于您问题中的样本数据 - 结果是
我在 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`
如果应用于您问题中的样本数据 - 结果是