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 croissant. Classe les tableaux restants pour qu’ils correspondent au premier tableau retrié.
Syntaxe
array_sort_asc(
array1[, ..., arrayN][,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 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_asc(array1,array2)
Sortie
| array1_sorted | array2_sorted |
|---|---|
| [1,2,3,4,5] | ["a »,"e »,"b »,"c »,"d"] |
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_asc(array1,array2).
L’exemple suivant trie une liste de noms dans l’ordre croissant. Il enregistre une liste de noms dans une variable, Names, qui est ensuite fractionnée en tableau et triée dans l’ordre croissant. La requête retourne les noms dans l’ordre croissant.
let Names = "John,Paul,Jane,Kao";
let SortedNames = strcat_array(array_sort_asc(split(Names, ",")), ",");
print result = SortedNames
Sortie
| résultat |
|---|
| Jane,John,Kao,Paul |
L’exemple suivant utilise l’opérateur summarize et la fonction array_sort_asc pour organiser et trier les commandes par utilisateur dans l’ordre chronologique.
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_asc(timestamps, commands)[1]
Sortie
| identifiant_utilisateur | commands_in_chronological_order |
|---|---|
| user1 | [ « ls », « mkdir », « chmod », « dir », « pwd », « rm » ] |
| user2 | [ « rm », « pwd » ] |
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_asc(dynamic([null,"blue","yellow","green",null]))
Sortie
| résultat |
|---|
| ["blue »,"green »,"yellow »,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_asc(dynamic([null,"blue","yellow","green",null]), false)
Sortie
| résultat |
|---|
| [null,null,"blue »,"green »,"yellow"] |