array_sort_desc() - Diziyi azalan sırada sıralama işlevi

Sürüm açılan listesini kullanarak hizmetler arasında geçiş yapın. Gezinti hakkında daha fazla bilgi edinin.
Şunlar için geçerlidir: ✅ Microsoft Fabric ✅ Azure Veri Gezgini ✅ Azure İzleyici ✅ Microsoft Sentinel

Bir veya daha fazla dizi alır. İlk diziyi azalan düzende sıralar. Kalan dizileri yeniden sıralanan ilk diziyle eşleşecek şekilde sıralar.

Sözdizimi

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

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

nulls_last sağlanmazsa varsayılan değeri true kullanılır.

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
dizi1... arrayN dynamic ✔️ Sıralanacak dizi veya dizi listesi.
nulls_last bool Son olup olmayacağını nullbelirler.

Döndürülenler

Girişteki dizilerle aynı sayıda dizi döndürür; ilk dizi artan düzende sıralanır ve kalan diziler yeniden sıralanan ilk diziyle eşleşecek şekilde sıralanır.

null , ilkinden farklı olan her dizi için döndürülür.

Farklı türlerdeki öğeleri içeren bir dizi aşağıdaki sırayla sıralanır:

  • Sayısal, datetimeve timespan öğeleri
  • Dize öğeleri
  • Guid öğeleri
  • Diğer tüm öğeler

Örnekler

Aşağıdaki örnek, array1ilk diziyi azalan düzende sıralar. Ardından array2 yeni array1düzeniyle eşleşecek şekilde sıralar.

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

Çıktı

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

Not

Çıkış sütunu adları, işlevin bağımsız değişkenlerine göre otomatik olarak oluşturulur. Çıkış sütunlarına farklı adlar atamak için aşağıdaki söz dizimini kullanın: ... | extend (out1, out2) = array_sort_desc(array1,array2).

Aşağıdaki örnek, adların listesini azalan düzende sıralar. Ad listesini Namesbir değişkene kaydeder. Bu, bir diziye bölünür ve azalan düzende sıralanır. Sorgu adları azalan sırada döndürür.

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

Çıktı

sonuç
Paul,Kayo,John,Jane

Aşağıdaki örnek, komutları kullanıcıya göre azalan kronolojik düzende düzenlemek ve sıralamak için summarize işlecini ve array_sort_asc işlevini kullanır.

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]

Çıktı

kullanıcı_kimliği commands_in_chronological_order
kullanıcı1 [
"rm",
"pwd",
"dir",
"chmod",
"mkdir",
"ls"
]
kullanıcı2 [
"pwd",
"rm"
]

Not

Verileriniz null değerler içerebiliyorsa make_listyerine make_list_with_nulls kullanın.

Varsayılan olarak, null değerler sıralanmış dizide en sonda yer alır. Ancak, öğesine son bağımsız değişken boololarak bir array_sort_asc() değer ekleyerek bunu açıkça denetleyebilirsiniz.

Aşağıdaki örnekte varsayılan davranış gösterilmektedir:

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

Çıktı

sonuç
["sarı","yeşil","mavi",null,null]

Aşağıdaki örnekte, null değerlerin dizinin başına yerleştirildiğini belirten false parametresinin kullanıldığı sıra dışı davranış gösterilmektedir.

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

Çıktı

sonuç
[null,null,"sarı","yeşil","mavi"]