ST_ContainsProperly - Amazon Redshift

ST_ContainsProperly

如果两个输入几何体都为非空,并且第二个几何体的 2D 投影的所有点都是第一个几何体的 2D 投影的内部点,则 ST_ContainsProperly 返回 true。

语法

ST_ContainsProperly(geom1, geom2)

参数

geom1

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型不能为 GEOMETRYCOLLECTION

geom2

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型不能为 GEOMETRYCOLLECTION。将此值与 geom1 进行比较,以确定其所有点是否都是 geom1 的内点。

返回类型

BOOLEAN

如果 geom1geom2 为 null,则返回 null。

如果 geom1geom2 不具有相同的空间参考系统标识符 (SRID) 值,则返回一个错误。

如果 geom1geom2 为几何体集合,则返回一个错误。

示例

在输入线串与输入面的内部和边界(但不是其外部)相交的位置,以下 SQL 返回 ST_Contains 和 ST_ContainsProperly 的值。面包含线串,但没有正确包含线串。

WITH tmp(g1, g2) AS (SELECT ST_GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0))'), ST_GeomFromText('LINESTRING(5 5,10 5,10 6,5 5)')) SELECT ST_Contains(g1, g2), ST_ContainsProperly(g1, g2) FROM tmp;
st_contains | st_containsproperly -------------+--------------------- t | f