STDistance (type de données geography)
Retourne la distance la plus courte entre un point dans une instance geography et un point dans une autre instance geography.
[!REMARQUE]
STDistance() retourne le LineString le plus court entre deux types geography. Il s'agit d'une approximation proche de la distance géodésique. L'écart de STDistance() sur les modèles terrestres les plus courants par rapport à la distance géodésique exacte ne dépasse pas 0,25 %. Cela évite toute confusion quant aux subtiles différences entre longueur et distance dans les types géodésiques.
Syntaxe
.STDistance ( other_geography )
Arguments
- other_geography
Autre instance geography à partir de laquelle mesurer la distance entre l'instance sur laquelle STDistance() est appelée. Si other_geography est un ensemble vide, STDistance() retourne la valeur Null.
Types de retour
SQL Server : float
Type de retour CLR : SqlDouble
Notes
STDistance() retourne toujours la valeur Null si les ID de références spatiaux (SRID) des instances geography ne correspondent pas.
[!REMARQUE]
Les méthodes du type de données geography qui calculent une aire ou une distance retournent des résultats différents selon le SRID de l'instance utilisé dans la méthode. Pour plus d'informations sur les SRID, consultez Identificateurs de référence spatiale (SRID).
Exemples
L'exemple suivant recherche la distance entre deux instances geography.
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);