Condividi tramite


STDistance (tipo di dati geography)

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() sui modelli di terra comuni dalla distanza geodetica esatta non è maggiore dello 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 STDistance() viene richiamato. Se other_geography è un set vuoto, STDistance() restituisce Null.

Tipi restituiti

SQL Server tipo restituito: float

Tipo CLR restituito: SqlDouble

Osservazioni

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 restituiranno risultati diversi in base all'identificatore SRID dell'istanza utilizzato nel metodo. Per ulteriori informazioni sugli identificatori SRID, vedere Identificatori SRID (Spatial Reference Identifier).

Esempi

Nell'esempio seguente viene individuata 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);

Vedere anche

Altre risorse

Metodi OGC sulle istanze di geografia