Partager via


make_bag() (fonction d’agrégation)

Crée un dynamic conteneur de propriétés JSON (dictionnaire) de toutes les valeurs d’expr dans le groupe.

Les valeurs Null sont ignorées et ne sont pas prises en compte dans le calcul.

Remarque

Cette fonction est utilisée conjointement avec l’opérateur de synthèse.

Syntaxe

make_bag(expr [, maxSize])

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
expr dynamic ✔️ Expression utilisée pour le calcul d’agrégation.
maxSize int Limite du nombre maximal d’éléments retournés. La valeur par défaut et maximale est 1048576.

Remarque

make_dictionary() a été déprécié en faveur de make_bag(). La version héritée a une limite maxSize par défaut de 128.

Retours

Retourne un dynamic conteneur de propriétés JSON (dictionnaire) de toutes les valeurs d’Expr dans le groupe, qui sont des sacs de propriétés. Les valeurs non-dictionnaire sont ignorées. Si une clé apparaît dans plusieurs lignes, une valeur arbitraire, hors des valeurs possibles de cette clé, est sélectionnée.

Exemple

L’exemple suivant montre un conteneur de propriétés JSON packé.

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)

Sortie

dict
{ « prop01 » : « val_a », « prop02 » : « val_b », « prop03 » : « val_c » }

Utilisez le plug-in bag_unpack() pour transformer les clés de conteneur dans la sortie make_bag() en colonnes.

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)

Sortie

prop01 prop02 prop03
val_a val_b val_c

bag_unpack().