Todos os produtos
Search
Central de documentação

MaxCompute:ARRAYS_ZIP

Última atualização: Sep 22, 2026

Combina vários arrays e retorna um array de structs, em que a N-ésima struct contém todos os N-ésimos elementos dos arrays de entrada.

Sintaxe

array<struct<T, U, ...>> arrays_zip(array<T> <a>, array<U> <b>[, ...])

Parâmetros

a e b: obrigatórios. Especifique um array para esses parâmetros, em que T em array<T> e U em array<U> definem os tipos de dados dos elementos nos arrays. Os elementos podem ser de qualquer tipo de dado.

Os seguintes tipos de dados são compatíveis:

  • TINYINT, SMALLINT, INT e BIGINT

  • FLOAT e DOUBLE

  • BOOLEAN

  • DECIMAL e DECIMALVAL

  • DATE, DATETIME, TIMESTAMP, IntervalDayTime e IntervalYearMonth

  • STRING, BINARY, VARCHAR e CHAR

  • ARRAY, STRUCT e MAP

Valor de retorno

A função retorna um valor do tipo ARRAY. O valor retornado varia de acordo com as seguintes regras:

  • A N-ésima struct no array de structs gerado contém todos os N-ésimos elementos dos arrays de entrada. Caso um array tenha menos de N elementos, null será o N-ésimo elemento desse array.

  • Se um ou mais arrays de entrada forem null, a função retorna null.

Exemplos

Selecione um dos exemplos abaixo:

  • Exemplo 1: Combina array(1, 2, 3) e array(2, 3, 4) em um array de structs. Instrução de exemplo:

    -- The return value is [{0:1, 1:2}, {0:2, 1:3}, {0:3, 1:4}]. 
    select arrays_zip(array(1, 2, 3), array(2, 3, 4));
  • Exemplo 2: Combina array(1, 2, 3) e array(4, 5) em um array de structs. Instrução de exemplo:

    -- The return value is [{0:1, 1:4}, {0:2, 1:5}, {0:3, 1:null}]. 
    select arrays_zip(array(1, 2, 3), array(4, 5));

Funções relacionadas

ARRAYS_ZIP é uma função de tipo complexo. Para obter mais informações sobre as funções usadas para processar dados de tipos complexos, como ARRAY, MAP, STRUCT e JSON, consulte Complex type functions.