Todos os produtos
Search
Central de documentação

MaxCompute:ST_COVERS

Última atualização: Aug 26, 2026

A função ST_COVERS determina se o primeiro objeto geográfico cobre o segundo. O resultado é verdadeiro quando todos os pontos do segundo objeto geográfico estão na fronteira ou no interior do primeiro.

Sintaxe

BOOLEAN ST_COVERS(GEOGRAPHY <value1>, GEOGRAPHY <value2>)

Parâmetros

value1, value2: Obrigatórios. Valores do tipo de dados GEOGRAPHY data type. Construa objetos GEOGRAPHY com funções como ST_GEOGPOINT, ST_GEOGFROMWKB, ST_GEOGFROMTEXT, ST_MAKELINE e ST_MAKEPOLYGON.

Valor de retorno

Retorna um valor BOOLEAN.

  • Retorna TRUE se todos os pontos do segundo objeto geográfico estiverem na fronteira ou no interior do primeiro; caso contrário, retorna FALSE.

  • Retorna FALSE se value1 ou value2 for um objeto geográfico vazio.

Um objeto geográfico cobre seus próprios nós de fronteira .

Exemplos

  • Exemplo 1: Verifica se o polígono POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0)) cobre três pontos: (5, 5), fora do polígono; (0, 0), na fronteira; e (0,5, 0,5), no interior.

    -- Returns TRUE because point(0 0) is on a boundary node of the polygon.
    SELECT ST_COVERS(ST_GEOGFROMTEXT('POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))'), ST_GEOGPOINT(0, 0));
    
    -- Returns TRUE because point(0.5 0.5) is in the interior of the polygon.
    SELECT ST_COVERS(ST_GEOGFROMTEXT('POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))'), ST_GEOGPOINT(0.5, 0.5));
    
    -- Returns FALSE because point(5 5) is outside the polygon.
    SELECT ST_COVERS(ST_GEOGFROMTEXT('POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))'), ST_GEOGPOINT(5, 5));
  • Exemplo 2: Demonstra que ST_COVERS retorna FALSE quando um argumento é um objeto geográfico vazio.

    -- Returns FALSE
    SELECT ST_COVERS(ST_GEOGFROMTEXT('POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))'),ST_GEOGFROMTEXT('point empty'));

Tópicos relacionados