Todos os produtos
Search
Central de documentação

MaxCompute:ARRAY_POSITION

Última atualização: Jun 26, 2026

Calcula a posição da primeira ocorrência do elemento element no array a. A numeração das posições dos elementos no array segue a ordem da esquerda para a direita, iniciando em 1.

Sintaxe

bigint array_position(array<T> <a>, T <element>)

Parâmetros

  • a: obrigatório. Array. O T em array<T> indica o tipo de dados dos elementos do array. Tipos de dados compatíveis:

    • TINYINT, SMALLINT, INT, BIGINT

    • FLOAT, DOUBLE

    • BOOLEAN

    • DECIMAL, DECIMALVAL

    • DATE, DATETIME, TIMESTAMP, IntervalDayTime, IntervalYearMonth

    • STRING, BINARY, VARCHAR, CHAR

    • ARRAY, STRUCT, MAP

  • element: obrigatório. Elemento a consultar. Deve ter o mesmo tipo de dados dos elementos em a.

Valor de retorno

Retorna um valor BIGINT. Regras de retorno:

  • Retorna NULL se o array a ou element for NULL.

  • Retorna 0 se o elemento não for encontrado.

Exemplos

  • Exemplo 1: calcule a posição da primeira ocorrência do elemento 1 no array array(3, 2, 1). Comando:

    --返回3。
    select array_position(array(3, 2, 1), 1);
  • Exemplo 2: element é NULL. Comando:

    --返回NULL。
    select array_position(array(3, 1, null), null);

Funções relacionadas

A função ARRAY_POSITION pertence às funções de tipos complexos. Para outras funções de processamento de dados de tipos complexos (como ARRAY, MAP, STRUCT e JSON), consulte Funções de tipos complexos.