array_sort_desc()
Gilt für: ✅Microsoft Fabric✅✅
Empfängt einzelne oder mehrere Arrays. Sortiert das erste Array in absteigender Reihenfolge. Sortiert die verbleibenden Arrays so, dass sie zum neu sortierten ersten Array passen.
Syntax
array_sort_desc(
array1[, ..., argumentN])
array_sort_desc(
array1[, ..., argumentN],
nulls_last)
Wenn nulls_last nicht angegeben wird, wird ein Standardwert true
verwendet.
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
Array1... arrayN | dynamic |
✔️ | Das Array oder die Liste der zu sortierenden Arrays. |
nulls_last | bool |
Bestimmt, ob null s zuletzt sein soll. |
Gibt zurück
Gibt die gleiche Anzahl von Arrays wie in der Eingabe zurück, wobei das erste Array in aufsteigender Reihenfolge sortiert ist und die verbleibenden Arrays sortiert sind, die dem neu angeordneten ersten Array entsprechen.
null
wird für jedes Array zurückgegeben, das sich von der ersten Matrix unterscheidet.
Ein Array, das Elemente verschiedener Typen enthält, wird in der folgenden Reihenfolge sortiert:
- Numerische Elemente und
datetime
timespan
Elemente - String-Elemente
- Guid-Elemente
- Alle anderen Elemente
Beispiele
Die Beispiele in diesem Abschnitt zeigen, wie Sie die Syntax verwenden, um Ihnen den Einstieg zu erleichtern.
Sortieren von zwei Arrays
Im folgenden Beispiel wird das anfängliche Array array1
in absteigender Reihenfolge sortiert. Anschließend wird array2
sortiert, um der neuen Reihenfolge von array1
zu entsprechen.
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"] |
Hinweis
Die Ausgabespaltennamen werden automatisch basierend auf den Argumenten für die Funktion generiert. Wenn Sie den Ausgabespalten unterschiedliche Namen zuweisen möchten, verwenden Sie die folgende Syntax: ... | extend (out1, out2) = array_sort_desc(array1,array2)
.
Sortieren von Teilzeichenfolgen
Im folgenden Beispiel wird eine Liste mit Namen in absteigender Reihenfolge sortiert. Sie speichert eine Liste von Namen in einer Variablen, Names
, die dann in ein Array unterteilt und in absteigender Reihenfolge sortiert wird. Die Abfrage gibt die Namen in absteigender Reihenfolge zurück.
let Names = "John,Paul,Jane,Kayo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames
Output
result |
---|
Paul,Kayo,John,Jane |
Zusammenfassen und array_sort_desc
Im folgenden Beispiel werden der summarize
-Operator und die array_sort_asc
-Funktion verwendet, um Befehle nach Benutzer in absteigender chronologischer Reihenfolge zu organisieren und zu sortieren.
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" ] |
Hinweis
Wenn Ihre Daten null
Werte enthalten können, verwenden Sie make_list_with_nulls anstelle von make_list.
Steuern des Speicherorts von null
Werten
Standardmäßig null
werden Die Werte zuletzt im sortierten Array platziert. Sie können dies jedoch explizit steuern, indem Sie einen bool
Wert als letztes Argument hinzufügen.array_sort_asc()
Das folgende Beispiel zeigt das Standardverhalten:
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]))
Output
result |
---|
["yellow","green","blue",null,null] |
Das folgende Beispiel zeigt nicht standardmäßiges Verhalten mithilfe des false
-Parameters, der angibt, dass Nullen am Anfang des Arrays platziert werden.
print result=array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)
Output
result |
---|
[null,null,"yellow","green","blue"] |