ST_DWithin
如果两个输入几何体值的 2D 投影之间的欧氏距离不大于阈值,则 ST_DWithin 返回 true。
语法
ST_DWithin(geom1, geom2, threshold)
参数
- geom1
-
一个
GEOMETRY
数据类型的值,或一个计算结果为GEOMETRY
类型的表达式。 - geom2
-
一个
GEOMETRY
数据类型的值,或一个计算结果为GEOMETRY
类型的表达式。 - threshold
-
一个 数据类型的 值
DOUBLE PRECISION
该值用输入参数的单位表示。
返回类型
BOOLEAN
如果 geom1 或 geom2 为 null,则返回 null。
如果 threshold 为负数,则返回一个错误。
如果 geom1 和 geom2 不具有相同的空间参考系统标识符 (SRID) 值,则返回一个错误。
如果 geom1 或 geom2 为几何体集合,则返回一个错误。
示例
以下 SQL 检查两个多边形之间的距离是否在 5 个单位内。
SELECT ST_DWithin(ST_GeomFromText('POLYGON((0 2,1 1,0 -1,0 2))'), ST_GeomFromText('POLYGON((-1 3,2 1,0 -3,-1 3))'),5);
st_dwithin
-----------
true