Delen via


make_bag() (aggregatiefunctie)

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

Hiermee maakt u een dynamic JSON-eigenschappenverzameling (woordenlijst) van alle waarden van expr- in de groep.

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 ( expr [,maxSize])

Meer informatie over syntaxisconventies.

Parameters

Naam Type Vereist Beschrijving
expr- dynamic ✔️ De expressie die wordt gebruikt voor de aggregatieberekening.
maxSize int De limiet voor het maximum aantal geretourneerde elementen. De standaard- en maximumwaarde is 1048576.

Notitie

make_dictionary() is afgeschaft ten gunste van make_bag(). De verouderde versie heeft een standaardlimiet van maxSize limiet van 128.

Retourneert

Retourneert een dynamic JSON-eigenschappenverzameling (woordenlijst) van alle waarden van Expr- in de groep, die eigenschappentassen zijn. Niet-dictionaire waarden worden overgeslagen. Als een sleutel in meer dan één rij wordt weergegeven, wordt een willekeurige waarde, uit de mogelijke waarden voor deze sleutel, geselecteerd.

Voorbeeld

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

let T = datatable(prop:string, value:string)
[
    "prop01", "val_a",
    "prop02", "val_b",
    "prop03", "val_c",
];
T
| extend p = bag_pack(prop, value)
| summarize dict=make_bag(p)

uitvoer

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

Gebruik de bag_unpack()-invoegtoepassing voor het transformeren van de zaksleutels in de uitvoer van make_bag() in kolommen.

let T = datatable(prop:string, value:string)
[
    "prop01", "val_a",
    "prop02", "val_b",
    "prop03", "val_c",
];
T
| extend p = bag_pack(prop, value)
| summarize bag=make_bag(p)
| evaluate bag_unpack(bag)

uitvoer

prop01 prop02 prop03
val_a val_b val_c