Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Reçoit un ou plusieurs tableaux. Trie le premier tableau par ordre décroissant. Classe les tableaux restants pour qu’ils correspondent au premier tableau retrié.
Syntaxe
array_sort_desc(
array1[, ..., argumentN])
array_sort_desc(
array1[, ..., argumentN],nulls_last)
Si nulls_last n’est pas fourni, une valeur par défaut est true utilisée.
En savoir plus sur les conventions de syntaxe.
Paramètres
| Nom | Catégorie | Requise | Descriptif |
|---|---|---|---|
| array1... arrayN | dynamic |
✔️ | Tableau ou liste de tableaux à trier. |
| nulls_last | bool |
Détermine s’il nulldoit être le dernier. |
Retours
Retourne le même nombre de tableaux que dans l’entrée, avec le premier tableau trié dans l’ordre croissant, et les tableaux restants ordonnés pour correspondre au premier tableau réorganisé.
null est retourné pour chaque tableau qui diffère de la longueur du premier.
Un tableau qui contient des éléments de différents types, est trié dans l’ordre suivant :
- Numériques,
datetimeettimespanéléments - Éléments de chaîne
- Éléments guid
- Tous les autres éléments
Exemples
L’exemple suivant trie le tableau initial, array1, dans l’ordre décroissant. Il trie ensuite array2 pour correspondre au nouvel ordre de array1.
let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_desc(array1,array2)
Sortie
| array1_sorted | array2_sorted |
|---|---|
| [5,4,3,2,1] | ["d »,"c »,"b »,"e »,"a"] |
Remarque
Les noms de colonnes de sortie sont générés automatiquement, en fonction des arguments de la fonction. Pour affecter différents noms aux colonnes de sortie, utilisez la syntaxe suivante : ... | extend (out1, out2) = array_sort_desc(array1,array2).
L’exemple suivant trie une liste de noms dans l’ordre décroissant. Il enregistre une liste de noms dans une variable, Names, qui est ensuite fractionnée en tableau et triée dans l’ordre décroissant. La requête retourne les noms dans l’ordre décroissant.
let Names = "John,Paul,Jane,Kayo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames
Sortie
| résultat |
|---|
| Paul,Kayo,John,Jane |
L’exemple suivant utilise l’opérateur summarize et la fonction array_sort_asc pour organiser et trier les commandes par l’utilisateur dans l’ordre chronologique décroissant.
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]
Sortie
| identifiant_utilisateur | commands_in_chronological_order |
|---|---|
| user1 | [ « rm », « pwd », « dir », « chmod », « mkdir », « ls » ] |
| user2 | [ « pwd », « rm » ] |
Remarque
Si vos données peuvent contenir des valeurs null, utilisez make_list_with_nulls au lieu de make_list.
Par défaut, null les valeurs sont placées en dernier dans le tableau trié. Toutefois, vous pouvez le contrôler explicitement en ajoutant une bool valeur comme dernier argument à array_sort_asc().
L’exemple suivant montre le comportement par défaut :
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]))
Sortie
| résultat |
|---|
| ["yellow »,"green »,"blue »,null,null] |
L’exemple suivant montre un comportement non défini à l’aide du paramètre false, qui spécifie que les valeurs null sont placées au début du tableau.
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)
Sortie
| résultat |
|---|
| [null,null,"yellow »,"green »,"blue"] |