Dela via


make_bag() (sammansättningsfunktion)

Skapar en dynamic JSON-egenskapspåse (ordlista) med alla värden för expr i gruppen.

Null-värden ignoreras och tar inte hänsyn till beräkningen.

Anteckning

Den här funktionen används tillsammans med sammanfattningsoperatorn.

Syntax

make_bag(expr [,maxSize])

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
Uttryck dynamic ✔️ Uttrycket som används för aggregeringsberäkningen.
Maxsize int Gränsen för det maximala antalet element som returneras. Standardvärdet och maxvärdet är 1048576.

Anteckning

make_dictionary() har blivit inaktuell till förmån för make_bag(). Den äldre versionen har en maxSize-standardgräns på 128.

Returer

Returnerar en dynamic JSON-egenskapspåse (ordlista) med alla värden för Expr i gruppen, som är egenskapspåsar. Icke-ordlistevärden hoppas över. Om en nyckel visas på mer än en rad väljs ett godtyckligt värde av de möjliga värdena för den här nyckeln.

Exempel

I följande exempel visas en packad JSON-egenskapsväska.

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)

Resultat

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

Använd plugin-programmet bag_unpack() för att omvandla påsnycklarna i utdata för make_bag() till kolumner.

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)

Resultat

prop01 prop02 prop03
val_a val_b val_c

bag_unpack().