JSON_INTEGER
Descrizione
JSON_INTEGER
è una funzione di riga che estrae an INTEGER
valore da un campo in un oggetto JSON.Sintassi
JSON_INTEGER
(json_string
, "json_field
")Valore restituito
Restituisce un valore per ogni riga di tipo
INTEGER
.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 dispone di un campo
indirizzo
contenente un oggetto JSON formattato in questo modo:{"street_address":"123 B Street", "city":"San Mateo", "state":"CA", "zip_code":"94403"}
È possibile estrarre il valore
del codice postale
utilizzando l'espressione, che restituisce "94403"
: JSON_INTEGER([address], "zip_code")
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","674","1021"], "test_scores":["753","957","1032"]}
È possibile estrarre il terzo valore della matrice
test_scores
utilizzando l'espressione, che restituisce "1032"
: JSON_INTEGER([top_scores], "test_scores.2")