名称

ST_Disjoint — 测试两个几何对象是否没有公共点

概要

boolean ST_Disjoint( geometry A , geometry B );

描述

如果两个几何对象是不相交的,则返回 true。如果两个几何对象没有公共点,则它们是不相交的。

如果一对几何对象存在任何其他空间关系,则它们不是不相交的。不相交意味着 ST_Intersects 为 false。

用数学术语表示:ST_Disjoint(A, B) ⇔ A ⋂ B = ∅

[Important]

增强功能:3.0.0 版本启用了对 GEOMETRYCOLLECTION 的支持

由 GEOS 模块执行

[Note]

此函数调用不使用索引。可以使用否定的 ST_Intersects 谓词作为更高效的替代方案,它会使用索引:ST_Disjoint(A,B) = NOT ST_Intersects(A,B)

[Note]

注意:这是返回布尔值的“允许”版本,而不是整数。

此方法实现了OGC SQL 1.1 简单要素实现规范 s2.1.1.2 //s2.1.13.3 - a.Relate(b, 'FF*FF****')

此方法实现了 SQL/MM 规范。SQL-MM 3: 5.1.26

示例

SELECT ST_Disjoint('POINT(0 0)'::geometry, 'LINESTRING ( 2 0, 0 2 )'::geometry);
 st_disjoint
---------------
 t
(1 row)
SELECT ST_Disjoint('POINT(0 0)'::geometry, 'LINESTRING ( 0 0, 0 2 )'::geometry);
 st_disjoint
---------------
 f
(1 row)
    

另请参阅

ST_Intersects