Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A ST_DISTANCE função retorna a distância entre duas expressões GeoJSON Point, Polygon, MultiPolygon ou LineString.
A ST_DISTANCE função retorna um valor numérico que representa a distância entre dois objetos GeoJSON no Azure Cosmos DB para NoSQL.
Sintaxe
ST_DISTANCE(<spatial_expr_1>, <spatial_expr_2>)
Arguments
| Description | |
|---|---|
spatial_expr_1 |
Qualquer expressão válida de Ponto GeoJSON, Polígono, MultiPolygon ou LineString. |
spatial_expr_2 |
Qualquer expressão válida de Ponto GeoJSON, Polígono, MultiPolygon ou LineString. |
Tipos de retorno
Retorna uma expressão numérica que enumera a distância entre duas expressões.
Exemplos
Esta seção contém exemplos de como usar este constructo de linguagem de consulta.
Calcular a distância entre pontos
Neste exemplo, a ST_DISTANCE função é usada para calcular a distância entre um local do escritório e um ponto de referência, retornando o resultado em quilômetros.
SELECT
o.name,
ST_DISTANCE(o.location, {
"type": "Point",
"coordinates": [-122.11758113953535, 47.66901087006131]
}) / 1000 AS distanceKilometers
FROM
offices o
WHERE
o.category = "business-offices"
[
{
"name": "Headquarters",
"distanceKilometers": 3.345269817267368
},
{
"name": "Research and development",
"distanceKilometers": 1907.438421299902
}
]
Observações
- O resultado é expresso em medidores para o sistema de referência padrão.
- Essa função se beneficia de um índice geoespacial, exceto em consultas com agregações.
- A especificação GeoJSON requer que os pontos dentro de um Polígono sejam especificados em ordem no sentido anti-horário. Um Polígono especificado em ordem no sentido horário representa o inverso da região dentro dele.