从 GEOMETRYCOLLECTION 中提取多边形或多多边形

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

在我的表中,我有一个几何字段。我意识到有 GeometryCollection 类型。有直线和多边形,当我使用 st_intersections 进行处理时,它会产生很多问题。 我想将 GeometryCollection 转换为多边形,同时保持多边形唯一。点和线应该被删除。

这是我的要求:

SELECT ST_Union(ST_MakeValid(ST_SnapToGrid(wkb_geometry, 0.0001)))  ,
ST_Union(ST_MakeValid(ST_SnapToGrid(wkb_geometry, 0.0001)))::json as format_json
from public.land group by id

这是我得到的屏幕截图

postgresql collections postgis polygon
1个回答
0
投票

您可以使用 ST_CollectionExtract(geom, 3) 从几何集合中仅提取多边形。

文档在这里: https://postgis.net/docs/manual-3.4/ST_CollectionExtract.html

© www.soinside.com 2019 - 2024. All rights reserved.