Skip to main content

JSON Parse tool Strumento di analisi JSON

Esempio di uno strumento

Analisi JSON dispone dell'opzione Esempio di uno strumento. Consulta Esempi di flussi di lavoro per scoprire come accedere a questo e a molti altri esempi direttamente in Alteryx Designer.

Utilizza Analisi JSON per separare il testo JSON (JavaScript Object Notation) in uno schema di tabella per l'elaborazione a valle. Puoi inserire l'output nello strumento Crea JSON per ricostruirlo nel formato JSON utilizzabile.

Configura lo strumento

  • Campo JSON: seleziona i campi che contengono il testo JSON. Il campo deve contenere testo JSON valido con tutto il testo di un record in una singola cella. Fai riferimento all'esempio seguente:

       {
            "firstName": "John",
            "lastName": "Smith",
            "age": 25,
            "address": {
                    "streetAddress": "21 2nd Street",
                    "city": "New York",
                    "state": "NY",
                    "postalCode": "10021"
    },
    "phoneNumber": [
            {
                    "type": "home",
                    "number": "212 555-1234"
            },
            {
                    "type": "fax",
                    "number": "646 555-4567"
            }
        ]
    }
  • Input nell'output: la colonna selezionata è inclusa nel flusso di dati in uscita dallo strumento.

Scegli la modalità di analisi JSON. Le scelte includono...

  • Valori di output in un singolo campo della stringa

  • Valori di output in campi specifici di tipi di dati

  • Annulla annidamento campo JSON : questa opzione è disponibile solo tramite AMP.

  • Appiattisci array: questa opzione è disponibile solo tramite AMP.

Consulta le sezioni seguenti per ulteriori informazioni ed esempi per ciascuna delle opzioni riportate in precedenza.

Questa opzione genera 2 campi: JSON_Name e JSON_ValueString. Utilizzando l'esempio di input precedente, lo strumento restituisce questi dati:

Esempio

Input JSON
   {
        "firstName": "John",
        "lastName": "Smith",
        "age": 25,
        "address": {
                "streetAddress": "21 2nd Street",
                "city": "New York",
                "state": "NY",
                "postalCode": "10021"
},
"phoneNumber": [
        {
                "type": "home",
                "number": "212 555-1234"
        },
        {
                "type": "fax",
                "number": "646 555-4567"
        }
    ]
}
Output strumento Analisi JSON

JSON_Name

JSON_ValueString

Nome

John

Cognome

Smith

age

25

address.streetAddress

21 2nd Street

address.city

New York

address.state

NY

address.postalCode

10021

phoneNumber.0.type

home

phoneNumber.0.number

212-555-1234

phoneNumber.1.type

fax

phoneNumber.1.number

646-555-4567

Questa opzione genera i seguenti 5 campi:

Nome del campo

Descrizione

JSON_Name

JSON_Name è la "chiave" di un oggetto JSON (coppia chiave:valore). Un punto separa la chiave da qualsiasi categoria gerarchica.

Stringa JSON_Value

Il "valore" della stringa corrispondente dell'oggetto JSON (coppia chiave:valore). Se il valore non è una stringa, verrà visualizzato come [Null].

JSON_ValueInt

Il "valore" intero corrispondente dell'oggetto JSON (coppia chiave:valore). Se il valore non è un numero intero, verrà visualizzato come [Null].

JSON_ValueFloat

Il "valore" mobile corrispondente dell'oggetto JSON (coppia chiave:valore). Se il valore non è mobile, viene visualizzato come [Null].

JSON_ValueBool

Il "valore" booleano corrispondente dell'oggetto JSON (coppia chiave:valore). Se il valore non è un booleano, verrà visualizzato come [Null].

Esempio

Input JSON
   {
        "firstName": "John",
        "lastName": "Smith",
        "age": 25,
        "address": {
                "streetAddress": "21 2nd Street",
                "city": "New York",
                "state": "NY",
                "postalCode": "10021"
},
"phoneNumber": [
        {
                "type": "home",
                "number": "212 555-1234"
        },
        {
                "type": "fax",
                "number": "646 555-4567"
        }
    ]
}
Output strumento Analisi JSON

JSON_Name

JSON_ValueString

JSON_ValueInt

JSON_ValueFloat

JSON_ValueBool

Nome

John

[Null]

[Null]

[Null]

Cognome

Smith

[Null]

[Null]

[Null]

age

[Null]

25

[Null]

[Null]

address.streetAddress

21 2nd Street

[Null]

[Null]

[Null]

address.city

New York

[Null]

[Null]

[Null]

address.state

NY

[Null]

[Null]

[Null]

address.postalCode

10021

[Null]

[Null]

[Null]

phoneNumber.0.type

home

[Null]

[Null]

[Null]

phoneNumber.0.number

212-555-1234

[Null]

[Null]

[Null]

phoneNumber.1.type

fax

[Null]

[Null]

[Null]

phoneNumber.1.number

646-555-4567

[Null]

[Null]

[Null]

Questa opzione consente di annullare l'annidamento degli oggetti JSON nelle colonne. Va solo di un livello più in profondità nell'oggetto JSON.

Avvertimento

Annulla annidamento campo JSON è disponibile solo tramite AMP.

Esempio

Input JSON

Considera una colonna "ore" nell'input con questi valori:

{    
    "Tuesday": {"close": "17:00", "open": "08:00"},
    "Friday": {"close": "17:00", "open": "08:00"},
    "Monday": {"close": "17:00", "open": "08:00"},
    "Wednesday": {"close": "17:00", "open": "08:00"},
    "Thursday": {"close": "17:00", "open": "08:00"}
}
Output strumento Analisi JSON

Questo è l'output quando si annulla l'annidamento della colonna "ore" sopra indicata:

hours.Tuesday

hours.Friday

hours.Monday

hours.Wednesday

hours.Thursday

{"close":"17:00","open":"08:00"}

{"close":"17:00","open":"08:00"}

{"close":"17:00","open":"08:00"}

{"close":"17:00","open":"08:00"}

{"close":"17:00","open":"08:00"}

  • Annulla annidamento negli output della colonna "ore" nelle colonne "hours.Tuesday", "hours.Friday", "hours.Monday", e così via.

  • "Hours.Tuesday" continua a contenere l'oggetto: {"Close": "17:00", "Open": "08:00"}. È possibile annullare l'annidamento di questo valore su hours.Tuesday.close e hours.Tuesday.open con un altro strumento Analisi Json.

Questa opzione è applicabile alle colonne che hanno solo valori di array. Consente di espandere una colonna di array JSON rimuovendo le parentesi quadre. Crea una riga separata per ogni elemento separata da virgola e assegna un ID per ciascuna riga.

Avvertimento

Appiattisci array è disponibile solo tramite AMP.

Esempio

Input JSON

Prendi in considerazione questo input di array tra parentesi quadre dove il nome della colonna è "ore" e il valore della colonna è un array:

[    
    {"day": "Monday", "open": "08:00", "close": "17:00"},
    {"day": "Tuesday", "open": "08:00", "close": "17:00"},
    {"day": "Wednesday", "open": "08:00", "close": "17:00"},
    {"day": "Thursday", "open": "08:00", "close": "17:00"},
    {"day": "Friday", "open": "08:00", "close": "17:00"}
]
Output strumento Analisi JSON

hours_flatten

hours_idx

{"day":"Monday","open":"08:00","close":"17:00"}

1

{"day":"Tuesday","open":"08:00","close":"17:00"}

2

{"day":"Wednesday","open":"08:00","close":"17:00"}

3

{"day":"Thursday","open":"08:00","close":"17:00"}

4

{"day":"Friday","open":"08:00","close":"17:00"}

5