make_list() (彙總函式)

建立 dynamic 群組中 expr 所有值的陣列。

Null 值會被忽略,而且不會納入計算。

注意

此函式會與 summarize 運算子搭配使用。

已被取代的別名: makelist ()

Syntax

make_list(expr [,maxSize])

深入瞭解 語法慣例

參數

名稱 類型 必要 Description
expr dynamic ✔️ 用於匯總計算的表達式。
maxSize int 傳回的項目數目上限。 預設值和最大值為 1048576。

注意

已淘汰的版本預設 maxSize 限制為 128。

傳回

dynamic 回群組中 expr 所有值的陣列。 如果未排序運算子的 summarize 輸入,則結果陣列中的元素順序是未定義的。 如果未排序 summarize 運算子的輸入,則產生陣列中元素的順序會追蹤其輸入。

提示

使用 array_sort_asc()array_sort_desc() 函式來依某些索引碼順序建立清單。

範例

單一資料行

下列範例會從單一數據行中建立清單:

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)

輸出

mylist
[“三角形”,“方形”,“矩形”,“邊形”,“六邊形”,“heptagon”,“八角”,“非對角”,“decagon”]

使用 'by' 子句

下列範例會使用 by 子句執行查詢:

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

輸出

isEvenSideCount mylist
false ["triangle","pentagon","heptagon","nonagon"]
true [“square”,“rectangle”,“hexagon”,“octagon”,“decagon”]

壓縮動態物件

下列範例示範如何在將動態物件設為清單之前,先將動態物件 封裝 在數據行中。

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

輸出

isEvenSideCount mylist
false [{"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}]

make_list_if 運算子與 make_list 相似,除了其也接受述詞。