array_sort_desc()
S’applique à : ✅Microsoft Fabric✅✅
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 | Type | Requise | Description |
---|---|---|---|
array1... arrayN | dynamic |
✔️ | Tableau ou liste de tableaux à trier. |
nulls_last | bool |
Détermine s’il null doit ê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,
datetime
ettimespan
éléments - Éléments de chaîne
- Éléments guid
- Tous les autres éléments
Exemples
Les exemples de cette section montrent comment utiliser la syntaxe pour vous aider à commencer.
Trier deux tableaux
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)
.
Trier les sous-chaînes
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
result |
---|
Paul,Kayo,John,Jane |
Combiner résumé et array_sort_desc
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
user_id | 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.
Contrôler l’emplacement des valeurs de null
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
result |
---|
["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
result |
---|
[null,null,"yellow »,"green »,"blue"] |