Partilhar via


STDistance (tipo de dados geográficos)

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

Retorna a menor distância entre um ponto em uma ocorrência de geografia e um ponto em outra ocorrência de geografia .

Note

STDistance() retorna o LineString mais curto entre dois tipos de geografia. Esta é uma distância aproximada da geodésica. O desvio dos STDistance() modelos terrestres comuns da distância geodésica exata não é superior a .25%. Isso evita confusão sobre as diferenças sutis entre comprimento e distância em tipos geodésicos.

Syntax

  
.STDistance ( other_geography )  

Arguments

other_geography
É outra instância geográfica a partir da qual se mede a distância entre a instância na qual STDistance() é invocado. Se other_geography for um conjunto vazio, STDistance() retornará null.

Tipos de devolução

Tipo de retorno do SQL Server: float

Tipo de retorno CLR: SqlDouble

Remarks

O resultado é expresso na unidade de medida definida pelo identificador de referência espacial (SRID) dos dados geográficos. STDistance() sempre retorna null se as IDs de referência espacial (SRIDs) das instâncias geográficas não corresponderem.

Note

Os métodos no tipo de dados geográficos que calculam uma área ou distância retornarão resultados diferentes com base no SRID da instância usada no método. Para obter mais informações sobre SRIDs, consulte Identificadores de referência espacial (SRIDs).

Examples

O exemplo a seguir localiza a distância entre duas instâncias geográficas.

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);  

Ver também

Métodos OGC em instâncias geográficas