make_bag() (agregační funkce)

Vytvoří dynamic kontejner vlastností JSON (slovník) všech hodnot výrazu ve skupině.

Hodnoty Null se ignorují a nezapočítávají se do výpočtu.

Poznámka

Tato funkce se používá ve spojení s operátorem summarize.

Syntax

make_bag(výraz [,maxSize])

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Typ Vyžadováno Popis
Výraz dynamic ✔️ Výraz použitý pro výpočet agregace.
maxSize int Limit maximálního počtu vrácených prvků. Výchozí a maximální hodnota jsou 1048576.

Poznámka

make_dictionary()se zastaralá ve prospěch .make_bag() Starší verze má výchozí limit maxSize 128.

Návraty

dynamic Vrátí kontejner vlastností JSON (slovník) všech hodnot Výraz ve skupině, které jsou kontejnery vlastností. Hodnoty, které nejsou slovníkem, budou vynechány. Pokud se klíč zobrazí ve více než jednom řádku, bude vybrána libovolná hodnota z možných hodnot tohoto klíče.

Příklad

Následující příklad ukazuje zabalenou sadu vlastností JSON.

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)

Výstup

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

Pomocí modulu plug-in bag_unpack() transformujte klíče bag ve výstupu make_bag() do sloupců.

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)

Výstup

prop01 prop02 prop03
val_a val_b val_c

bag_unpack()