Delen via


zak_stel_sleutel()

Van toepassing op: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

bag_set_key() ontvangt een dynamic eigenschapstas, een sleutel en een waarde. De functie stelt de opgegeven sleutel in de zak in op de opgegeven waarde. De functie overschrijft een bestaande waarde voor het geval de sleutel al bestaat.

Syntaxis

bag_set_key( zak,sleutel,waarde)

Meer informatie over syntaxisconventies.

Parameterwaarden

Naam Typologie Verplicht Beschrijving
zak dynamic ✔️ De eigenschappentas die u wilt wijzigen.
sleutel string ✔️ De sleutel die moet worden ingesteld. Een JSON-pad (u kunt een sleutel opgeven op de geneste niveaus met behulp van JSONPath-notatie ) of de sleutelnaam voor een sleutel op hoofdniveau. Matrixindexering of JSON-basispaden worden niet ondersteund.
waarde elk scalaire gegevenstype ✔️ De waarde waarop de sleutel is ingesteld.

Retouren

Retourneert een dynamic eigenschapsverzameling met opgegeven sleutel-waardeparen. Als de invoertas geen eigenschapsverzameling is, wordt een null waarde geretourneerd.

Opmerking

Als u s wilt behandelen nullals lege zakken, gebruikt coalesce(x, dynamic({}))u .

Voorbeelden

In het volgende voorbeeld ziet u hoe u een sleutel op hoofdniveau instelt in een eigenschappentas.

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

In het volgende voorbeeld ziet u hoe u een JSONPath-sleutel instelt in een eigenschappentas.

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