Categorias:

Funções geoespaciais

ST_DWITHIN

Retorna TRUE se a distância geodésica mínima entre dois pontos (objetos GEOGRAPHY) estiver dentro da distância especificada. Caso contrário, retorna FALSE.

Se os parâmetros forem valores GEOGRAPHY que não são pontos (por exemplo, linhas ou polígonos), isto retorna TRUE ou FALSE baseado na distância geodésica mínima entre os dois pontos mais próximos dos dois valores.

Dica

Você pode usar o serviço de otimização de pesquisa para melhorar o desempenho de consultas que chamam essa função. Para obter mais detalhes, consulte Serviço de otimização de pesquisa.

Sintaxe

ST_DWITHIN( <geography_expression_1> , <geography_expression_2> , <distance_in_meters> )
Copy

Argumentos

geography_expression_1

O argumento deve ser uma expressão do tipo GEOGRAPHY.

geography_expression_2

O argumento deve ser uma expressão do tipo GEOGRAPHY.

distance_in_meters

O argumento deve ser uma expressão do tipo REAL. A distância é em metros.

Retornos

Retorna um BOOLEAN.

Notas de uso

  • Retorna NULL se alguma entrada for NULL.

Exemplos

Isto retorna TRUE porque a distância em metros entre dois pontos a 1 grau de separação ao longo do equador é menor que 150,000 metros:

SELECT ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000);
+-------------------------------------------------------------+
| ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000) |
|-------------------------------------------------------------|
| True                                                        |
+-------------------------------------------------------------+
Copy