【发布时间】:2014-08-26 05:53:34
【问题描述】:
我的 PostgreSQL 数据库(9.3 版)中有一个包含 geom 列的表,其中包含一个多面体。然后我有一个线对象,它建立了一个边界。我正在尝试使用边界对象内的所有几何对象构建视图。
我尝试了函数 ST_Within(不能处理多面体)和 ST_Intersects...
这是我的 SQL 命令:
CREATE VIEW buildings_intersect_boundary AS
SELECT ROW_NUMBER() OVER (ORDER BY "buildings".gid ASC) AS ROW_NUMBER,
"buildings".name,"buildings".type,
"buildings".geom
FROM "buildings" INNER JOIN "boundary" ON
ST_Intersects("buildings".geom,"boundary".geom)
目前我通过使用边界框来解决问题:
CREATE VIEW osm_buildings_intersect_project_boundary AS
SELECT ROW_NUMBER() OVER (ORDER BY "buildings_fromOSMShape".gid ASC) AS ROW_NUMBER,
"buildings_fromOSMShape".name,"buildings_fromOSMShape".type,
"buildings_fromOSMShape".geom
FROM "buildings_fromOSMShape" INNER JOIN "boundary_project_area" ON
"buildings_fromOSMShape".geom @ "boundary_project_area".geom
但这会返回太多对象...
操作系统:Ubuntu 14.04
【问题讨论】:
标签: postgresql postgis intersection polygons