类别:

地理空间函数

ST_DWITHIN

如果两点(两个 GEOGRAPHY 对象)之间的最小测地线距离在指定距离之内,则返回 TRUE。否则返回 FALSE。

如果参数是非点的 GEOGRAPHY 值(如直线或多边形),则根据两个值中最近两点之间的最小测地线距离返回 TRUE 或 FALSE。

小技巧

您可以使用搜索优化服务,提高用于调用此函数的查询的性能。有关详细信息,请参阅 搜索优化服务

语法

ST_DWITHIN( <geography_expression_1> , <geography_expression_2> , <distance_in_meters> )
Copy

实参

geography_expression_1

实参必须是 GEOGRAPHY 类型的表达式。

geography_expression_2

实参必须是 GEOGRAPHY 类型的表达式。

distance_in_meters

实参必须是 REAL 类型的表达式。距离的单位是米。

返回

返回 BOOLEAN。

使用说明

  • 如果任何输入为 NULL,则返回 NULL。

示例

返回 TRUE,因为在赤道上相距 1 度的两点之间的距离不到 150,000 米:

SELECT ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000);
+-------------------------------------------------------------+
| ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000) |
|-------------------------------------------------------------|
| True                                                        |
+-------------------------------------------------------------+
Copy
语言: 中文