array_sort_desc()
接收一或多個陣列。 以遞減順序排序第一個陣列。 排序其餘的陣列,使其符合重新排序的第一個陣列。
語法
array_sort_desc(
array1[, ..., argumentN])
array_sort_desc(
array1[, ..., argumentN],
nulls_last)
如果未提供 nulls_last,則會使用預設值 true
。
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | Description |
---|---|---|---|
array1...arrayN | dynamic |
✔️ | 要排序的陣列或陣列清單。 |
nulls_last | bool |
判斷 是否 null 應該是最後一個。 |
傳回
傳回與輸入中相同數目的陣列,第一個陣列以遞增順序排序,其餘的陣列則排序以符合重新排序的第一個陣列。
null
會針對與第一個陣列長度不同的每個數位傳回 。
如果陣列包含不同類型的元素,則會依下列順序排序:
- 數值、
datetime
、和timespan
元素 - 字串元素
- Guid 元素
- 其他所有元素
範例 1 - 排序兩個陣列
let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_desc(array1,array2)
輸出
array1_sorted | array2_sorted |
---|---|
[5,4,3,2,1] | ["d","c","b","e","a"] |
注意
輸出資料行名稱會根據函式的引數自動產生。 若要將不同的名稱指派給輸出資料行,請使用下列語法:... | extend (out1, out2) = array_sort_desc(array1,array2)
範例 2 - 排序子字串
let Names = "John, Paul, George, Ringo";
let SortedNames = strcat_array(array_sort_desc(split(Names, ",")), ",");
print result = SortedNames
輸出
結果 |
---|
Ringo、Paul、John、Paul |
範例 3 - 合併摘要和 array_sort_desc
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]
輸出
user_id | commands_in_chronological_order |
---|---|
user1 | [ "rm", "pwd", "dir", "chmod", "mkdir", "ls" ] |
user2 | [ "pwd", "rm" ] |
注意
如果您的資料包含 null
值,請使用 make_list_with_nulls,而不是 make_list。
範例 4 - 控制 null
值的位置
依預設,null
值會放在已排序陣列中的最後面。 不過,您可以藉由將 bool
值新增為 array_sort_desc()
的最後一個引數,來明確控制位置。
預設行為的範例:
print array_sort_desc(dynamic([null,"blue","yellow","green",null]))
輸出
print_0 |
---|
["yellow","green","blue",null,null] |
具有非預設行為的範例:
print array_sort_desc(dynamic([null,"blue","yellow","green",null]), false)
輸出
print_0 |
---|
[null,null,"yellow","green","blue"] |
相關內容
若要以遞增順序排序第一個陣列,請使用 array_sort_asc()。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應