- Categorias:
ST_INTERSECTION¶
Ao receber dois objetos de entrada GEOGRAPHY, retorna um objeto GEOGRAPHY que representa a forma que contém o conjunto de pontos que são comuns aos dois objetos de entrada (ou seja, a interseção dos dois objetos).
- Consulte também:
ST_INTERSECTION_AGG , ST_UNION , ST_DIFFERENCE , ST_SYMDIFFERENCE
Sintaxe¶
Argumentos¶
geography_expression_1Um objeto GEOGRAPHY.
geography_expression_2Um objeto GEOGRAPHY.
Retornos¶
A função retorna um valor do tipo GEOGRAPHY.
Notas de uso¶
Se qualquer vértice de um objeto de entrada estiver no limite do outro objeto de entrada (excluindo os vértices), a saída pode ou não incluir esse ponto de vértice.
Por exemplo, suponha que
geography_expression_1sejaPOINT(1 1)egeography_expression_2sejaLINESTRING(1 0, 1 2). Nesse caso,geography_expression_1está no limite degeography_expression_2, mas não é um vértice dele.Neste exemplo, a saída esperada é
POINT(1 1), mas a saída real pode ser uma geografia vazia (representada por NULL).Para ajudar a detectar e contornar estes casos, uma ideia potencial é usar ST_DWITHIN para determinar se a distância mínima entre os dois objetos de entrada é
0. Por exemplo, você pode verificar se um ponto está sobre um LineString verificando se a distância mínima entre os dois objetos é zero:Essa instrução produz a seguinte saída:
Não há garantia de que a função produzirá resultados normalizados e/ou mínimos. Por exemplo, uma saída poderia consistir de um LineString contendo vários pontos que na verdade formam apenas um segmento reto.
Exemplos¶
O exemplo a seguir retorna um objeto GEOGRAPHY que representa a diferença entre dois objetos de entrada GEOGRAPHY:
Esse exemplo produz a seguinte saída:
As imagens a seguir ilustram as diferenças nas áreas que representam os objetos de entrada e saída:

