array_sort_desc()
Recibe una o más matrices. Ordena la primera matriz en orden descendente. Ordena las matrices restantes para que coincidan con la primera matriz reordenada.
Syntax
array_sort_desc(
array1[, ..., argumentN])
array_sort_desc(
array1[, ..., argumentN],
nulls_last)
Si no se proporciona nulls_last , se usa un valor predeterminado de true
.
Obtenga más información sobre las convenciones de sintaxis.
Parámetros
Nombre | Tipo | Requerido | Descripción |
---|---|---|---|
array1... arrayN | dynamic |
✔️ | Matriz o lista de matrices que se van a ordenar. |
nulls_last | bool |
Determina si null s debe ser el último. |
Devoluciones
Devuelve el mismo número de matrices que en la entrada, con la primera matriz ordenada en orden ascendente y las matrices restantes ordenadas para que coincidan con la primera matriz reordenada.
null
se devuelve para cada matriz que difiere en longitud de la primera.
Si una matriz contiene elementos de diferentes tipos, se ordena en el orden siguiente:
- Elementos numeric,
datetime
, ytimespan
- Elementos string
- Elementos GUID
- Todos los demás elementos
Ejemplo 1: Ordenación de dos matrices
let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_desc(array1,array2)
Salida
array1_sorted | array2_sorted |
---|---|
[5,4,3,2,1] | ["d","c","b","e","a"] |
Nota
Los nombres de columna de salida se generan automáticamente, en función de los argumentos de la función. Para asignar nombres diferentes a las columnas de salida, use la sintaxis siguiente: ... | extend (out1, out2) = array_sort_desc(array1,array2)
Ejemplo 2: Ordenación de subcadenas
let Names = "John, Paul, George, Ringo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames
Salida
resultado |
---|
Ringo, Paul, John, George |
Ejemplo 3: combinación de resumen y array_sort_desc
datatable(command:string, command_time:datetime, user_id:string)
[
'chmod', datetime(2019-07-15), "user1",
'ls', datetime(2019-07-02), "user1",
'dir', datetime(2019-07-22), "user1",
'mkdir', datetime(2019-07-14), "user1",
'rm', datetime(2019-07-27), "user1",
'pwd', datetime(2019-07-25), "user1",
'rm', datetime(2019-07-23), "user2",
'pwd', datetime(2019-07-25), "user2",
]
| summarize timestamps = make_list(command_time), commands = make_list(command) by user_id
| project user_id, commands_in_chronological_order = array_sort_desc(timestamps, commands)[1]
Salida
user_id | commands_in_chronological_order |
---|---|
user1 | [ "rm", "pwd", "dir", "chmod", "mkdir", "ls" ] |
user2 | [ "pwd", "rm" ] |
Nota
Si los datos pueden contener null
valores, use make_list_with_nulls en lugar de make_list.
Ejemplo 4: Controlar la ubicación de null
los valores
De forma predeterminada, null
los valores se colocan por última vez en la matriz ordenada. Sin embargo, puede controlarlo explícitamente agregando un bool
valor como último argumento a array_sort_desc()
.
Ejemplo con comportamiento predeterminado:
print array_sort_desc(dynamic([null,"blue","yellow","green",null]))
Salida
print_0 |
---|
["yellow","green","blue",null,null] |
Ejemplo con comportamiento no predeterminado:
print array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)
Salida
print_0 |
---|
[null,null,"yellow","green","blue"] |
Contenido relacionado
Para ordenar la primera matriz en orden ascendente, use array_sort_asc() .
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente las Cuestiones de GitHub como mecanismo de retroalimentación para el contenido y lo sustituiremos por un nuevo sistema de retroalimentación. Para más información, consulta:Enviar y ver comentarios de