Partager via


bag_set_key()

S’applique à : ✅Microsoft Fabric

bag_set_key() reçoit un dynamic conteneur de propriétés, une clé et une valeur. La fonction définit la clé donnée dans le conteneur sur la valeur donnée. La fonction remplace toute valeur existante si la clé existe déjà.

Syntaxe

bag_set_key( , ,

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Catégorie Requise Descriptif
sac dynamic ✔️ Conteneur de propriétés à modifier.
clé string ✔️ Clé à définir. Soit un chemin JSON (vous pouvez spécifier une clé sur les niveaux imbriqués à l’aide de la notation JSONPath ) ou le nom de clé d’une clé de niveau racine. L’indexation de tableaux ou les chemins JSON racine ne sont pas pris en charge.
valeur n’importe quel type de données scalaire ✔️ Valeur à laquelle la clé est définie.

Retours

Retourne un dynamic conteneur de propriétés avec des paires clé-valeur spécifiées. Si le conteneur d’entrée n’est pas un conteneur de propriétés, une null valeur est retournée.

Remarque

Pour traiter nullles sacs vides, utilisez coalesce(x, dynamic({})).

Exemples

L’exemple suivant montre comment définir une clé de niveau racine dans un conteneur de propriétés.

datatable(input: dynamic) [
    dynamic({'key1': 1, 'key2': 2}), 
    dynamic({'key1': 1, 'key3': 'abc'}),
]
| extend result = bag_set_key(input, 'key3', 3)
saisie résultat
{
« key1 » : 1,
« key2 » : 2
}
{
« key1 » : 1,
« key2 » : 2,
« key3 » : 3
}
{
« key1 » : 1,
« key3 » : « abc »
}
{
« key1 » : 1,
« key3 » : 3
}

L’exemple suivant montre comment définir une clé JSONPath dans un conteneur de propriétés.

datatable(input: dynamic)[
    dynamic({'key1': 123, 'key2': {'prop1': 123, 'prop2': 'xyz'}}),
    dynamic({'key1': 123})
]
| extend result = bag_set_key(input, '$.key2.prop1', 'abc')
saisie résultat
{
« key1 » : 123,
« key2 » : {
« prop1 » : 123,
« prop2 » : « xyz »
}
}
{
« key1 » : 123,
« key2 » : {
« prop1 » : « abc »,
« prop2 » : « xyz »
}
}
{
« key1 » : 123
}
{
« key1 » : 123,
« key2 » : {
« prop1 » : « abc »
}
}