JSON_DOUBLE
Descrizione
JSON_DOUBLE
è una funzione di riga che estrae a DOUBLE
valore da un campo in un oggetto JSON.Sintassi
JSON_DOUBLE
(json_string
, "json_field
")Valore restituito
Restituisce un valore per ogni riga di tipo
DOUBLE
.Parametri di input
- json_string
- Sono obbligatori. Il nome di un campo o di un'espressione di tipoTEXT(o una stringa letterale) che contiene un oggetto JSON valido.
- json_field
- Sono obbligatori. La chiave o il nome del valore del campo che si desidera estrarre.
- Per i campi di primo livello, specificare l'identificatore del nome (chiave) del campo.
- Per accedere ai campi all'interno di un oggetto nidificato, specificare un percorso separato da punti per i nomi dei campi (ad esempiotop_level_field_name.nested_field_name).
- Per estrarre un valore da una matrice, specificare il percorso separato da punti dei nomi dei campi e la posizione della matrice a partire da 0 per il primo valore di una matrice, 1 per il secondo valore e così via (ad esempiofield_name.0).
- Se l'identificatore del nome contiene punti o punti all'interno del nome stesso, eseguire l'escape del nome racchiudendolo tra parentesi (ad esempio, [field.name.with.dot].[another.dot.field.name]
- Se il nome del campo è null (vuoto), utilizzare, ad esempio, parentesi senza alcun valore intermedio come identificatore[].
Esempi
Se si disponeva di un campo
top_scores
che conteneva un oggetto JSON formattato in questo modo (con i valori contenuti in una matrice):{"practice_scores":["538.67","674.99","1021.52"], "test_scores":["753.21","957.88","1032.87"]}
È possibile estrarre il terzo valore della matrice
test_scores
utilizzando l'espressione, che restituisce "1032.87"
: JSON_DOUBLE([top_scores], "test_scores.2")