- 类别:
ST_DISJOINT¶
如果两个 GEOGRAPHY 对象或两个 GEOMETRY 对象不相交(即不共享空间的任何部分),则返回 TRUE。ST_DISJOINT 等同于 NOT ST_INTERSECTS(expr1, expr2)。
备注
此函数不支持使用 GeometryCollection 或 FeatureCollection 作为输入值。
- 另请参阅:
语法¶
ST_DISJOINT( <geography_expression_1> , <geography_expression_2> )
ST_DISJOINT( <geometry_expression_1> , <geometry_expression_2> )
实参¶
geography_expression_1
GEOGRAPHY 对象。
geography_expression_2
GEOGRAPHY 对象。
geometry_expression_1
GEOMETRY 对象。
geometry_expression_2
GEOMETRY 对象。
返回¶
BOOLEAN。
使用说明¶
对于 GEOMETRY 对象,如果两个输入 GEOMETRY 对象具有不同的 SRIDs,该函数会报告错误。
示例¶
GEOGRAPHY 示例¶
以下示例使用 ST_DISJOINT 函数来确定两个地理空间对象是否不相交:
-- These two polygons are disjoint and do not intersect. SELECT ST_DISJOINT( TO_GEOGRAPHY('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), TO_GEOGRAPHY('POLYGON((3 3, 5 3, 5 5, 3 5, 3 3))') ); +---------------------------------------------------------+ | ST_DISJOINT( | | TO_GEOGRAPHY('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), | | TO_GEOGRAPHY('POLYGON((3 3, 5 3, 5 5, 3 5, 3 3))') | | ) | |---------------------------------------------------------| | True | +---------------------------------------------------------+-- These two polygons intersect and are not disjoint. SELECT ST_DISJOINT( TO_GEOGRAPHY('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), TO_GEOGRAPHY('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))') ); +---------------------------------------------------------+ | ST_DISJOINT( | | TO_GEOGRAPHY('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), | | TO_GEOGRAPHY('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))') | | ) | |---------------------------------------------------------| | False | +---------------------------------------------------------+