Aracılığıyla paylaş


make_list() (toplama işlevi)

Şunlar için geçerlidir: ✅Microsoft Fabric

Gruptaki ifadenin tüm değerlerinden oluşan dynamic bir dizi oluşturur.

Null değerler yoksayılır ve hesaplamayı dikkate almaz.

Not

Bu işlev summarize işleciyle birlikte kullanılır.

Kullanım dışı bırakılan diğer adlar: makelist()

Sözdizimi

make_list( expr [,maxSize])

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

Parametreler

Ad Tür Zorunlu Açıklama
ifade dynamic ✔️ Toplama hesaplaması için kullanılan ifade.
maxSize int Döndürülen en fazla öğe sayısı. Varsayılan ve maksimum değer 1048576.

Not

Kullanım dışı bırakılan sürümde varsayılan maxSize sınırı 128'tir.

Döndürülenler

Gruptaki ifadenin tüm değerlerini içeren dynamic bir dizi döndürür. işlecine summarize giriş sıralanmamışsa, sonuçta elde edilen dizideki öğelerin sırası tanımlanmamış olur. işlecine summarize giriş sıralanmışsa, sonuçta elde edilen dizideki öğelerin sırası girişin sıralamasını izler.

İpucu

array_sort_asc() Veya array_sort_desc() işlevini kullanarak bir anahtara göre sıralı liste oluşturun.

Örnekler

Bu bölümdeki örneklerde, kullanmaya başlamanıza yardımcı olması için söz diziminin nasıl kullanılacağı gösterilmektedir.

Bir sütun

Aşağıdaki örnek, tek bir sütundaki şekillerin listesini döndürmek için shapesveri tablosu kullanır.

let shapes = datatable (name: string, sideCount: int)
[
    "triangle", 3,
    "square", 4,
    "rectangle", 4,
    "pentagon", 5,
    "hexagon", 6,
    "heptagon", 7,
    "octagon", 8,
    "nonagon", 9,
    "decagon", 10
];
shapes
| summarize mylist = make_list(name)

Çıktı

listem
["triangle","square","rectangle","pentagon","hexagon","heptagon","octagon","nonagon","decagon"]

'by' yan tümcesini kullanma

Aşağıdaki örnek make_list işlevini ve by yan tümcesini kullanarak çift veya tek sayıda yanlarına göre gruplandırılmış iki nesne listesi oluşturur.

let shapes = datatable (name: string, sideCount: int)
[
    "triangle", 3,
    "square", 4,
    "rectangle", 4,
    "pentagon", 5,
    "hexagon", 6,
    "heptagon", 7,
    "octagon", 8,
    "nonagon", 9,
    "decagon", 10
];
shapes
| summarize mylist = make_list(name) by isEvenSideCount = sideCount % 2 == 0

Çıktı

isEvenSideCount listem
yanlış ["triangle","pentagon","heptagon","nonagon"]
true ["square","rectangle","hexagon","octagon","decagon"]

Dinamik nesne paketleme

Aşağıdaki örneklerde, bir dinamik nesnenin liste oluşturmadan önce bir sütunda nasıl paketlenmesi gerektiği gösterilmektedir. Yan sayının çift mi yoksa tek mi olduğunu gösteren boole tablosu isEvenSideCount ve her kategoride paketlenmiş torba listelerini içeren bir mylist sütunu döndürür.

let shapes = datatable (name: string, sideCount: int)
[
    "triangle", 3,
    "square", 4,
    "rectangle", 4,
    "pentagon", 5,
    "hexagon", 6,
    "heptagon", 7,
    "octagon", 8,
    "nonagon", 9,
    "decagon", 10
];
shapes
| extend d = bag_pack("name", name, "sideCount", sideCount)
| summarize mylist = make_list(d) by isEvenSideCount = sideCount % 2 == 0

Çıktı

isEvenSideCount listem
yanlış [{"name":"triangle","sideCount":3},{"name":"pentagon","sideCount":5},{"name":"heptagon","sideCount":7},{"name":"nonagon","sideCount":9}]
true [{"name":"square","sideCount":4},{"name":"rectangle","sideCount":4},{"name":"hexagon","sideCount":6},{"name":"octagon","sideCount":8},{"name":"decagon","sideCount":10}]