16

我有一个列 ( latlon),它是ST_MultiPolygon.

另一个几何图形是一个点,我只想检查它是否在我的一个 MultiPolygons 内。

我试过了:

SELECT ST_CONTAINS(latlon, ST_GeometryFromText('POINT(48.208417 16.372472)')
FROM districts

它总是返回 false;为什么我不能检查一个点是否在一个多多边形内ST_Contains

4

2 回答 2

22

它是这样工作的:

SELECT name, st_contains(latlon, ST_GeomFromText('POINT(16.391944 48.218056)', 4326))  FROM bezirks
于 2012-12-11T16:33:05.000 回答
3

st_contains 适用于多种几何形状。您必须确保该点位于多边形几何的同一坐标系上。

此外,您必须知道,如果该点落入多面体的边界,则不会被视为包含该点。在这种情况下,它将返回 false,因为多边形几何内部没有点。

于 2012-12-16T18:15:10.087 回答