ST_INTERSECTS函数用于判断两个地理对象是否相交。
命令格式
BOOLEAN ST_INTERSECTS(GEOGRAPHY <value1>, GEOGRAPHY <value2>)参数说明
value1、value2:必填。GEOGRAPHY数据类型的地理对象。可根据需求使用ST_GEOGPOINT、ST_GEOGFROMWKB、ST_GEOGFROMTEXT、ST_MAKELINE和ST_MAKEPOLYGON函数来构造GEOGRAPHY类型对象。
返回值说明
返回BOOLEAN类型。若两个地理对象存在至少一个公共点,则返回TRUE;否则返回FALSE。
使用示例
-- 返回TRUE
SELECT ST_INTERSECTS(ST_GEOGFROMTEXT('POINT(5 5)'), ST_GEOGFROMTEXT('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))'));
-- 返回FALSE,因为POLYGON对象中有一个hole
SELECT ST_INTERSECTS(ST_GEOGFROMTEXT('POINT(5 5)'), ST_GEOGFROMTEXT('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0), (4 4, 6 4, 6 6, 4 6, 4 4))'));