Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la publicación del blog
Función ARRAY_SORT
Crea una versión ordenada de la matriz de entrada en orden ascendente o descendente. Puede especificar dónde deben aparecer los valores NULL en el resultado. La función es NULL-safe, lo que significa que trata los valores NULL como objetos conocidos.
Sintaxis
ARRAY_SORT( array [, sort_ascending [, nulls_first]] )
Argumentos
- array
-
Una expresión SUPER que especifica la matriz que se va a ordenar.
- sort_ascending
-
Un valor booleano que especifica si se debe ordenar la matriz en orden ascendente o descendente:
- Specify TRUE to sort the elements in ascending order.
- Specify FALSE to sort the elements in descending order.
El valor predeterminado es TRUE.
- nulls_first
-
Un valor booleano que especifica la posición NULL:
- Specify TRUE to place NULLs at the beginning of the sorted array.
- Specify FALSE to place NULLs at the end of the sorted array.
Tipo de retorno
La función ARRAY_SORT devuelve un tipo SUPER.
Nota
Al ordenar matrices que contienen tipos de datos mixtos, los elementos se ordenan según la siguiente precedencia de tipos:
- Boolean values
- Numeric values
- String values
- Arrays
- Objects/Dictionaries
Dentro de cada categoría de tipo, los elementos se ordenan según su orden natural (por ejemplo, los números se ordenan numéricamente y las cadenas alfabéticamente).
Ejemplo
Los ejemplos siguientes muestran la función 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)