繁体   English   中英

我如何删除postgis中的重叠行

[英]how do i remove overlapping lines in postgis

我有一个典型的数据库,有数百万个多边形作为地块,我想将这些多边形分成线,然后去掉相互重叠的线。 这些线将纯粹用于在mapnik /和geoserver中渲染,因为每个宗地边界都会被渲染两次。

我建议将宗地多边形拆分为一个新表(“boundary_lines”),然后搜索并删除重叠的行。 我将如何在postgis中删除这些重叠的行?

使用ST_Equals:
http://postgis.refractions.net/docs/ST_Equals.html

您的SQL语句可能如下所示:

SELECT y.id, z.id 
FROM mytable y, mytable z
WHERE ST_Equals(y.the_geom,z.the_geom)

查询将永远运行,但希望您只需要执行一次。 运行后,取结果并小心删除重复的ID。

请注意,这不会摆脱不完全重叠的边界。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM