JsonSet() modifica una stringa contenente dati JSON (JavaScript Object Notation). Può impostare o inserire un valore JSON con la nuova posizione specificata dal percorso. I dati devono essere dati JSON validi ma possono contenere spazi extra o righe nuove.
Sintassi:
value JsonSet(json, path, value)
Tipo di dati restituiti: duale
Argomenti
Argomento
Descrizione
json
Stringa contenente dati JSON.
path
Il percorso deve essere specificato in base a RFC 6901. Ciò consentirà la creazione di proprietà all'interno dei dati JSON senza l'utilizzo di funzione complesse sottostringa o indice e concatenazione.
value
Il nuovo valore della stringa in formato JSON.
Esempio: espressioni del grafico valide e non valide
Esempio
Risultato
JsonSet( '{}','/a','"b"' )
Restituisce {"a":"b"}
JsonSet( '[]','/0','"x"' )
Restituisce ["x"]
JsonSet( '"abc"','','123' )
Restituisce 123
JsonSet( '"abc"','/x','123' )
Restituisce null. Il percorso non punta a una parte valida dei dati JSON.
JsonSet( '{"a":{"b":"c"}}','a/b','"x"' )
Restituisce null. Il percorso non è valido.
JsonSet( '{"a":"b"}','/a','abc' )
Restituisce null. Il valore non è un JSON valido. Una stringa deve essere racchiusa tra virgolette.
Esempio: principi fondamentali della funzione JsonSet
Panoramica
I dati JSON vengono ricevuti come una stringa di testo in un'unica riga. Si desidera aggiornare il prezzo dell'articolo e il prezzo totale dell'ordine di conseguenza.
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati che viene caricato in una tabella dati chiamata Example.
Un campo della tabella dati denominata OrderDetails.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:
OrderDetails
Creare la seguente misura:
JsonSet(JsonSet(OrderDetails,'/items/price',1100),'/total_price',2200), per impostare il prezzo su 1100 e il prezzo totale su 2200 utilizzando il percorso corretto delle rispettive chiavi nella stringa JSON.
Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!