在我的表中,我有一个几何字段。我意识到有 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
您可以使用 ST_CollectionExtract(geom, 3) 从几何集合中仅提取多边形。
文档在这里: https://postgis.net/docs/manual-3.4/ST_CollectionExtract.html