Condividi tramite


make_bag() (funzione di aggregazione)

Si applica a: ✅Microsoft Fabric

Crea un dynamic contenitore di proprietà JSON (dizionario) di tutti i valori di expr nel gruppo.

I valori Null vengono ignorati e non vengono inseriti nel calcolo.

Nota

Questa funzione viene usata insieme all'operatore summarize.

Sintassi

make_bag ( expr [,maxSize])

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
expr dynamic ✔️ Espressione utilizzata per il calcolo dell'aggregazione.
maxSize int Limite per il numero massimo di elementi restituiti. Il valore predefinito e massimo è 1048576.

Nota

make_dictionary() è stato deprecato a favore di make_bag(). La versione legacy ha un limite maxSize predefinito di 128.

Valori restituiti

Restituisce un dynamic contenitore di proprietà JSON (dizionario) di tutti i valori di Expr nel gruppo, ovvero contenitori di proprietà. I valori non dizionari vengono ignorati. Se una chiave viene visualizzata in più righe, viene selezionato un valore arbitrario, ovvero i valori possibili per questa chiave.

Esempio

L'esempio seguente mostra un contenitore di proprietà JSON compresso.

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)

Output

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

Usare il plug-in bag_unpack() per trasformare le chiavi del contenitore nell'output make_bag() in colonne.

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)

Output

prop01 prop02 prop03
val_a val_b val_c