STDistance(geography 数据类型)

返回一个 geography 实例中的点与另一个 geography 实例中的点之间的最短距离。

注意注意

STDistance() 返回两个地理类型之间的最短 LineString。这与测地距离十分相似。普通地球模型上 STDistance() 与精确测地距离之间的偏差不超过 0.25%。这将避免混淆测地类型中长度和距离之间的细微差别。

语法

.STDistance ( other_geography )

参数

  • other_geography
    另一个 geography 实例,将度量该实例与调用了 STDistance() 的实例之间的距离。如果 other_geography 为空集,则 STDistance() 返回 Null。

返回类型

SQL Server 返回类型:float

CLR 返回类型:SqlDouble

注释

如果 geography 实例的空间引用 ID (SRID) 不匹配,则 STDistance() 始终返回 Null。

注意注意

用于计算面积和距离的 geography 数据类型的方法将根据在该方法中使用的实例的 SRID 返回不同结果。有关 SRID 的详细信息,请参阅空间引用标识符 (SRID)

示例

DECLARE @g geography;
DECLARE @h geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SET @h = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);
SELECT @g.STDistance(@h);

请参阅

其他资源