次の方法で共有


bag_set_key()

適用対象: ✅Microsoft FabricAzure データ エクスプローラーAzure MonitorMicrosoft Sentinel

bag_set_key() は、 dynamic プロパティ バッグ、キー、および値を受け取ります。 この関数は、バッグ内の指定されたキーを指定された値に設定します。 この関数は、キーが既に存在する場合に備え、既存の値をオーバーライドします。

構文

bag_set_key(bag,key,value)

構文規則について詳しく知る。

パラメーター

件名 タイプ Required 説明
bag dynamic ✔️ 変更するプロパティ バッグ。
キー string ✔️ 設定するキー。 JSON パス ( JSONPath 表記を使用して入れ子になったレベルのキーを指定できます) またはルート レベル キーのキー名。 配列インデックス作成またはルート JSON パスはサポートされていません。
value 任意のスカラー データ型 ✔️ キーが設定される値。

返品

指定したキーと値のペアを持つ dynamic プロパティ バッグを返します。 入力バッグがプロパティ バッグでない場合は、 null 値が返されます。

Note

nullを空のバッグとして扱うには、coalesce(x, dynamic({}))を使用します。

ルート レベルのキーを使用する

datatable(input: dynamic) [
    dynamic({'key1': 1, 'key2': 2}), 
    dynamic({'key1': 1, 'key3': 'abc'}),
]
| extend result = bag_set_key(input, 'key3', 3)
input 結果
{
"key1": 1,
"key2": 2
}
{
"key1": 1,
"key2": 2,
"key3": 3
}
{
"key1": 1,
"key3": "abc"
}
{
"key1": 1,
"key3": 3
}

JSONPath キーを使用する

datatable(input: dynamic)[
    dynamic({'key1': 123, 'key2': {'prop1': 123, 'prop2': 'xyz'}}),
    dynamic({'key1': 123})
]
| extend result = bag_set_key(input, '$.key2.prop1', 'abc')
input 結果
{
"key1": 123,
"key2": {
"prop1": 123,
"prop2": "xyz"
}
}
{
"key1": 123,
"key2": {
"prop1": "abc",
"prop2": "xyz"
}
}
{
"key1": 123
}
{
"key1": 123,
"key2": {
"prop1": "abc"
}
}