STDistance (tipo di dati geography)
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure database SQL in Microsoft Fabric
Restituisce la distanza più breve tra un punto in un'istanza geography e un punto in un'altra istanza geography.
Nota
STDistance()
restituisce la LineString più breve tra due tipi di geografia. È un'approssimazione della distanza geodetica. La deviazione di STDistance()
dalla distanza geodetica esatta sui modelli di terra comuni non è superiore allo 0,25%. In tal modo si evitano confusioni sulle differenze minime tra lunghezza e distanza nei tipi geodetici.
Sintassi
.STDistance ( other_geography )
Argomenti
other_geography
Altra istanza geography da cui misurare la distanza rispetto all'istanza sulla quale viene chiamato STDistance(). Se other_geography è un set vuoto, STDistance() restituisce un valore Null.
Tipi restituiti
Tipo SQL Server restituito: float
Tipo CLR restituito: SqlDouble
Osservazioni:
Il risultato viene espresso nell'unità di misura definita dall'identificatore SRID (Spatial Reference Identifier) dei dati spaziali. STDistance() restituisce sempre Null se gli identificatori SRID delle istanze geography non corrispondono.
Nota
I metodi nel tipo di dati geography che calcolano un'area o una distanza restituiscono risultati diversi a seconda dell'identificatore SRID dell'istanza usato nel metodo. Per altre informazioni sugli identificatori SRID, vedere Identificatori SRID (Spatial Reference Identifier).
Esempi
Nell'esempio seguente viene trovata la distanza tra due istanze 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);