Delen via


make_bag() (aggregatiefunctie)

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

Null-waarden worden genegeerd en houden geen rekening met de berekening.

Notitie

Deze functie wordt gebruikt in combinatie met de samenvattende operator.

Syntax

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 standaard maxSize-limiet van 128.

Retouren

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

Voorbeeld

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

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 invoegtoepassing bag_unpack() om de zaksleutels in de uitvoer make_bag() te transformeren 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

bag_unpack().