Delen via


make_bag_if() (aggregatiefunctie)

Van toepassing op: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel-

Hiermee maakt u een dynamic JSON-eigenschappenverzameling (woordenlijst) van expr waarden in records waarvoor predicaat resulteert in true.

Null-waarden worden genegeerd en worden niet meegenomen in de berekening.

Notitie

Deze functie wordt gebruikt in combinatie met de operator summarize.

Syntaxis

make_bag_if( , predicaat predicaat [,maxSize])

Meer informatie over syntaxisconventies.

Parameters

Naam Type Vereist Beschrijving
expr- dynamic ✔️ De expressie die wordt gebruikt voor de aggregatieberekening.
predicaat bool ✔️ Het predicaat dat resulteert in trueom expr- aan het resultaat toe te voegen.
maxSize int De limiet voor het maximum aantal geretourneerde elementen. De standaard- en maximumwaarde is 1048576.

Retourneert

Retourneert een dynamic JSON-eigenschappenverzameling (woordenlijst) van expr waarden in records waarvoor predicaat resulteert in true. Niet-dictionaire waarden worden overgeslagen. Als een sleutel in meer dan één rij wordt weergegeven, wordt een willekeurige waarde, buiten de mogelijke waarden voor deze sleutel, geselecteerd.

Notitie

Deze functie zonder predicaat is vergelijkbaar met make_bag.

Voorbeeld

In het volgende voorbeeld ziet u een verpakte JSON-eigenschappentas.

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)

uitvoer

Dict
{ "prop01": "val_a", "prop03": "val_c" }

Gebruik bag_unpack() plugin voor het transformeren van de zaksleutels in de uitvoer van make_bag_if() in kolommen.

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)

uitvoer

prop01 prop03
val_a val_c