【发布时间】:2011-04-27 09:29:48
【问题描述】:
我有一个用 osm2pgsql 导入的 postgis 数据库。显然有很多无效的几何图形会导致一些空间操作出错。
geometry.buffer(x) 似乎可以解决这个问题,但是这个操作需要很多时间。因此,我只想将它应用于无效的几何图形:
select * from
(
select *
from polygons
WHERE NOT IsValid(polygons.geom)
) as tbl
where ST_Intersects(
ST_Buffer(tbl.geom, 0.001),
GeomFromText('POLYGON ((XY))', 4326)
);
但是这个查询似乎将缓冲区操作应用于表中的所有条目。您如何将此操作仅限于无效的几何图形?
提前谢谢你!
【问题讨论】: