Função ARRAY_SORT - Amazon Redshift

O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a publicação de blog .

Função ARRAY_SORT

Exibe uma versão classificada da matriz de entrada na ordem crescente ou decrescente. É possível especificar onde os valores NULL devem aparecer no resultado. A função é à prova de NULL, o que significa que os NULLs são tratados como objetos conhecidos.

Sintaxe

ARRAY_SORT( array [, sort_ascending [, nulls_first]] )

Argumentos

array

Uma expressão SUPER que especifica a matriz a ser classificada.

sort_ascending

Um valor booliano que especifica se a matriz deve ser classificada ordem crescente ou decrescente:

  • Especifique TRUE para classificar os elementos em ordem crescente.

  • Especifique FALSE para classificar os elementos em ordem decrescente.

O padrão é TRUE.

nulls_first

Um valor booliano que especifica o posicionamento de NULL.

  • Especifique TRUE para colocar valores NULL no início da matriz classificada.

  • Especifique FALSE para colocar valores NULL no final da matriz classificada.

Tipo de retorno

A função ARRAY_SORT exibe um tipo SUPER.

Observação

Ao classificar matrizes contendo tipos de dados mistos, os elementos são ordenados de acordo com a seguinte precedência de tipo:

  • Valores boolianos

  • Valores numéricos

  • Valores de string

  • Matrizes

  • Objetos/dicionários

Em cada categoria de tipo, os elementos são classificados de acordo com sua ordem natural (p. ex., os números são classificados numericamente, as strings, alfabeticamente).

Exemplo

Os exemplos a seguir mostram a função ARRAY_SORT.

-- Ascending order (default) SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false)); array_sort -------------------------- [false,0,1,"a","b",null] (1 row) -- Descending order SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false), False); array_sort -------------------------- [null,"b","a",1,0,false] (1 row) -- Descending order with NULLs at the end of the sorted array SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false), False, False); array_sort -------------------------- ["b","a",1,0,false,null] (1 row)

Consulte também