make_bag_if() (彙總函式)
在dynamic
述詞評估true
為 的記錄中,建立 JSON 屬性包 (字典) expr 值。
Null 值會被忽略,且不會納入計算中。
注意
此函式會與 summarize 運算子搭配使用。
Syntax
make_bag_if(
expr,
述詞 [,
maxSize])
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | Description |
---|---|---|---|
expr | dynamic |
✔️ | 用於匯總計算的表達式。 |
predicate | bool |
✔️ | 評估 true 為 的述詞,以便 將expr 加入至結果。 |
maxSize | int |
傳回之項目數目上限的限制。 預設值和最大值1048576。 |
傳回
dynamic
傳回 JSON 屬性包 (字典) 述詞評估為true
的記錄中的 expr 值。 將略過非字典值。
如果索引鍵出現在一個以上的資料列中,則會選取任意值 (超出此索引鍵的可能值)。
注意
沒有述詞的函式類似於 make_bag
。
範例
下列範例顯示已封裝的 JSON 屬性包。
let T = datatable(prop:string, value:string, predicate:bool)
[
"prop01", "val_a", true,
"prop02", "val_b", false,
"prop03", "val_c", true
];
T
| extend p = bag_pack(prop, value)
| summarize dict=make_bag_if(p, predicate)
輸出
dict |
---|
{ "prop01": "val_a", "prop03": "val_c" } |
使用 bag_unpack() 外掛程式,將 make_bag_if() 輸出中的包索引鍵轉換成資料行。
let T = datatable(prop:string, value:string, predicate:bool)
[
"prop01", "val_a", true,
"prop02", "val_b", false,
"prop03", "val_c", true
];
T
| extend p = bag_pack(prop, value)
| summarize bag=make_bag_if(p, predicate)
| evaluate bag_unpack(bag)
輸出
prop01 | prop03 |
---|---|
val_a | val_c |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應