Megosztás a következőn keresztül:


array_sort_desc()

Egy vagy több tömböt fogad. Az első tömb rendezése csökkenő sorrendben. A többi tömböt az átrendezett első tömbhöz rendeli.

Syntax

array_sort_desc(tömb1[, ..., argumentumN])

array_sort_desc(array1[, ..., argumentN],nulls_last)

Ha nulls_last nincs megadva, a rendszer az alapértelmezett értéket true használja.

További információ a szintaxis konvenciókról.

Paraméterek

Név Típus Kötelező Leírás
tömb1... arrayN dynamic ✔️ A rendezendő tömbök vagy tömbök listája.
nulls_last bool Meghatározza, hogy az s legyen-e nullaz utolsó.

Válaszok

Ugyanannyi tömböt ad vissza, mint a bemenetben, az első tömböt növekvő sorrendbe rendezve, a többi tömböt pedig az átrendezett első tömbnek megfelelően rendezi.

null a függvény minden olyan tömbhöz visszaadja a függvényt, amely az elsőtől eltérő hosszúságú.

Ha egy tömb különböző típusú elemeket tartalmaz, az a következő sorrendben lesz rendezve:

  • Numerikus, datetime, és timespan elemek
  • Sztringelemek
  • Guid elemek
  • Minden más elem

1. példa – Két tömb rendezése

let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_desc(array1,array2)

Kimenet

array1_sorted array2_sorted
[5,4,3,2,1] ["d","c","b","e","a"]

Megjegyzés

A kimeneti oszlopnevek automatikusan jönnek létre a függvény argumentumai alapján. Ha különböző neveket szeretne hozzárendelni a kimeneti oszlopokhoz, használja az alábbi szintaxist: ... | extend (out1, out2) = array_sort_desc(array1,array2)

2. példa – Részsztringek rendezése

let Names = "John, Paul, George, Ringo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames

Kimenet

result
Ringo, Paul, John, George

3. példa – Összegzés és array_sort_desc kombinálása

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]

Kimenet

user_id commands_in_chronological_order
user1 [
"rm",
"pwd",
"dir",
"chmod",
"mkdir",
"ls"
]
user2 [
"pwd",
"rm"
]

Megjegyzés

Ha az adatok tartalmazhatnak null értékeket, make_list helyett használja make_list_with_nulls.

4. példa – Az értékek helyének szabályozása null

Alapértelmezés szerint az null értékek az utolsó helyre kerülnek a rendezett tömbben. Ezt azonban explicit módon szabályozhatja úgy, hogy hozzáad egy bool értéket az utolsó argumentumként a elemhez array_sort_desc().

Példa az alapértelmezett viselkedésre:

print array_sort_desc(dynamic([null,"blue","yellow","green",null]))

Kimenet

print_0
["sárga","zöld","kék",null,null]

Példa nem ismert viselkedésre:

print array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)

Kimenet

print_0
[null,null,"sárga","zöld","kék"]

Az első tömb növekvő sorrendbe rendezéséhez használja a array_sort_asc().