Sdílet prostřednictvím


make_bag() (agregační funkce)

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

Hodnoty Null se ignorují a nefaktorují do výpočtu.

Poznámka:

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

Syntaxe

make_bag( výraz [, maxSize])

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

Parametry

Název Type Pož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 je 1048576.

Poznámka:

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

Návraty

Vrátí tašku dynamic vlastností JSON (slovník) všech hodnot výrazu ve skupině, což jsou kontejnery vlastností. Hodnoty, které nejsou slovníky, se přeskočí. Pokud se klíč zobrazí ve více než jednom řádku, vybere se libovolná hodnota z možných hodnot tohoto klíče.

Příklad

Následující příklad ukazuje zabalenou tašku 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 tašky 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().