Todos os produtos
Search
Central de documentação

MaxCompute:SORT_ARRAY

Última atualização: Sep 22, 2026

Ordena os elementos de um array.

Sintaxe

array<T> sort_array(array<T> <a>[, <isasc>])

Parâmetros

  • a: obrigatório. Especifica um array. T em array<T> indica o tipo de dados dos elementos do array. Os elementos podem ser de qualquer tipo de dados.

  • isasc: opcional. Define a ordem de classificação dos elementos no array. Valores válidos: true e false. O valor true indica ordem crescente, e o valor false indica ordem decrescente. Caso você não especifique este parâmetro, os elementos serão ordenados em ordem crescente.

Valor de retorno

Retorna um valor do tipo ARRAY. O valor null é interpretado como o valor mínimo.

Exemplos

  • Exemplo 1: Ordene os dados na tabela t_array, que contém as colunas c1 ARRAY<STRING>, c2 ARRAY<INT>, and c3 ARRAY<STRING>. Dados da tabela:

    +------------+---------+--------------+
    | c1         | c2      | c3           |
    +------------+---------+--------------+
    | [a, c, f, b]  | [4, 5, 7, 2, 5, 8]  |  [You, Me, Him] |
    +------------+---------+--------------+

    Ordene os dados em cada coluna da tabela. Instrução de exemplo:

    -- The return value is [a, b, c, f] [2, 4, 5, 5, 7, 8] [Him, Me, You]. 
    select sort_array(c1),sort_array(c2),sort_array(c3) from t_array;
  • Exemplo 2: Ordene os elementos de array(10, 20, 40, 30, 30, null, 50) em ordem decrescente. Instrução de exemplo:

    -- The return value is [50, 40, 30, 30, 20, 10, null]. 
    select sort_array(array(10, 20, 40, 30, 30, null, 50), false);

Funções relacionadas

SORT_ARRAY é 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.