bag_set_key()
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati✅ Azure Monitor✅Microsoft Sentinel
bag_set_key() riceve un dynamic
contenitore delle proprietà, una chiave e un valore. La funzione imposta la chiave specificata nel contenitore sul valore specificato. La funzione esegue l'override di qualsiasi valore esistente nel caso in cui la chiave esista già.
Sintassi
bag_set_key(
valore chiavecontenitore,
,
)
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
bag | dynamic |
✔️ | Contenitore delle proprietà da modificare. |
key | string |
✔️ | Chiave da impostare. Un percorso JSON (è possibile specificare una chiave nei livelli annidati usando la notazione JSONPath ) o il nome della chiave per una chiave di livello radice. L'indicizzazione di matrici o i percorsi JSON radice non sono supportati. |
value | qualsiasi tipo di dati scalare | ✔️ | Valore su cui è impostata la chiave. |
Valori restituiti
Restituisce un dynamic
contenitore di proprietà con coppie chiave-valore specificate. Se il contenitore di input non è un contenitore delle proprietà, viene restituito un null
valore.
Nota
Per trattare null
s come sacchetti vuoti, usare coalesce(x, dynamic({}))
.
Esempi
Usare una chiave a livello radice
datatable(input: dynamic) [
dynamic({'key1': 1, 'key2': 2}),
dynamic({'key1': 1, 'key3': 'abc'}),
]
| extend result = bag_set_key(input, 'key3', 3)
input | result |
---|---|
{ "key1": 1, "key2": 2 } |
{ "key1": 1, "key2": 2, "key3": 3 } |
{ "key1": 1, "key3": "abc" } |
{ "key1": 1, "key3": 3 } |
Usare una chiave 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 | result |
---|---|
{ "key1": 123, "key2": { "prop1": 123, "prop2": "xyz" } } |
{ "key1": 123, "key2": { "prop1": "abc", "prop2": "xyz" } } |
{ "key1": 123 } |
{ "key1": 123, "key2": { "prop1": "abc" } } |