array_sort_desc()
Si applica a: ✅Microsoft Fabric✅
Riceve una o più matrici. Ordina la prima matrice in ordine decrescente. Ordina le matrici rimanenti in modo che corrispondano alla prima matrice riordinata.
Sintassi
array_sort_desc(
array1[, ..., argumentN])
array_sort_desc(
array1[, ..., argumentN],
nulls_last)
Se non viene specificato nulls_last , viene usato un valore predefinito di true
.
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
matrice1... arrayN | dynamic |
✔️ | Matrice o elenco di matrici da ordinare. |
nulls_last | bool |
Determina se null deve essere l'ultimo. |
Valori restituiti
Restituisce lo stesso numero di matrici dell'input, con la prima matrice ordinata in ordine crescente e le matrici rimanenti ordinate in modo che corrispondano alla prima matrice riordinata.
null
viene restituito per ogni matrice diversa dalla prima.
Una matrice che contiene elementi di tipi diversi viene ordinata nell'ordine seguente:
- Elementi numerici,
datetime
, etimespan
- Elementi stringa
- Elementi GUID
- Tutti gli altri elementi
Esempi
Negli esempi di questa sezione viene illustrato come usare la sintassi per iniziare.
Ordinare due matrici
Nell'esempio seguente viene ordinata la matrice iniziale, array1
, in ordine decrescente. Ordina quindi array2
in modo che corrisponda al nuovo ordine di array1
.
let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_desc(array1,array2)
Output
array1_sorted | array2_sorted |
---|---|
[5,4,3,2,1] | ["d","c","b","e","a"] |
Nota
I nomi delle colonne di output vengono generati automaticamente, in base agli argomenti della funzione. Per assegnare nomi diversi alle colonne di output, usare la sintassi seguente: ... | extend (out1, out2) = array_sort_desc(array1,array2)
.
Ordinare le sottostringhe
Nell'esempio seguente viene ordinato un elenco di nomi in ordine decrescente. Salva un elenco di nomi in una variabile, Names
, che viene quindi suddiviso in una matrice e ordinato in ordine decrescente. La query restituisce i nomi in ordine decrescente.
let Names = "John,Paul,Jane,Kayo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames
Output
result |
---|
Paul,Kayo,John,Jane |
Combinare riepilogo e array_sort_desc
L'esempio seguente usa l'operatore summarize
e la funzione array_sort_asc
per organizzare e ordinare i comandi in base all'utente in ordine cronologico decrescente.
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]
Output
user_id | commands_in_chronological_order |
---|---|
user1 | [ "rm", "pwd", "dir", "chmod", "mkdir", "ls" ] |
user2 | [ "pwd", "rm" ] |
Nota
Se i dati possono contenere valori null
, usare make_list_with_nulls anziché make_list.
Controllare la posizione dei valori di null
Per impostazione predefinita, null
i valori vengono inseriti nella matrice ordinata. Tuttavia, è possibile controllarlo in modo esplicito aggiungendo un bool
valore come ultimo argomento a array_sort_asc()
.
L'esempio seguente illustra il comportamento predefinito:
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]))
Output
result |
---|
["yellow","green","blue",null,null] |
Nell'esempio seguente viene illustrato il comportamento non predefinito usando il parametro false
, che specifica che i valori Null vengono posizionati all'inizio della matrice.
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)
Output
result |
---|
[null,null,"yellow","green","blue"] |
Contenuto correlato
- tipi di funzione Aggregazione a colpo d'occhio
- array_sort_asc()
- strcat_array()