Skip to main content

JSON Parse tool Ferramenta Análise JSON

Requisitos da função de usuário

Função de usuário*

Acesso à ferramenta/ao recurso

Usuário completo

Usuário básico

X

*Aplica-se a clientes do Alteryx OneProfessional e Enterprise Edition nas versões 2025.1 e posteriores do Designer.

Use a ferramenta Análise JSON para separar o texto JavaScript Object Notation (JSON) em um esquema de tabela para processamento posterior. Você pode alimentar a saída para a ferramenta Construir JSON para converter o texto de volta ao formato JSON.

Fluxo de trabalho de exemplo

Esta ferramenta tem um fluxo de trabalho de exemplo. Acesse Exemplos de fluxos de trabalho para saber como acessar esse e muitos outros exemplos diretamente no Alteryx Designer.

Configurar a ferramenta

  • Campo JSON: selecione os campos com texto JSON. A coluna deve conter um JSON válido com todo o texto de um registro em uma única célula. Veja este exemplo:

       {
            "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"
            }
        ]
    }
  • Incluir entrada na saída: a coluna selecionada é incluída na saída do fluxo de dados da ferramenta.

Escolha como o JSON é analisado. As opções incluem...

  • Fazer a saída dos valores em um único campo de cadeia de caracteres

  • Fazer a saída dos valores em campos específicos para cada tipo de dados

  • Desaninhar campo JSON: esta opção está disponível apenas via AMP.

  • Nivelar matriz: esta opção está disponível apenas via AMP.

Consulte as seções abaixo para obter informações adicionais e exemplos para cada uma das opções acima.

Esta opção produz dois campos: JSON_Name e JSON_ValueString. Usando o exemplo da entrada acima, os seguintes dados saem da ferramenta:

Exemplo

Entrada 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"
        }
    ]
}
Saída da ferramenta Análise JSON

JSON_Name

JSON_ValueString

firstName

John

lastName

Smith

age

25

address.streetAddress

21 2nd Street

address.city

New York

address.state

NY

address.postalCode

10021

phoneNumber.0.type

início

phoneNumber.0.number

212-555-1234

phoneNumber.1.type

fax

phoneNumber.1.number

646-555-4567

Esta opção produz estes cinco campos:

Nome do campo

Descrição

JSON_Name

JSON_Name é a "chave" de um objeto JSON (par chave-valor). Um ponto separa a chave de quaisquer categorias hierárquicas.

JSON_Value String

O "valor" de cadeia de caracteres correspondente ao objeto JSON (par chave-valor). Se o valor não for uma cadeia de caracteres, ele é exibido como [Null].

JSON_ValueInt

O "valor" de número inteiro correspondente ao objeto JSON (par chave-valor). Se o valor não for um número inteiro, ele será exibido como [Null].

JSON_ValueFloat

O "valor" float correspondente ao objeto JSON (par chave-valor). Se o valor não for um float, ele é exibido como [Null].

JSON_ValueBool

O "valor" booleano correspondente ao objeto JSON (par chave-valor). Se o valor não for booleano, ele é exibido como [Null].

Exemplo

Entrada 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"
        }
    ]
}
Saída da ferramenta Análise JSON

JSON_Name

JSON_ValueString

JSON_ValueInt

JSON_ValueFloat

JSON_ValueBool

firstName

John

[Null]

[Null]

[Null]

lastName

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

início

[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]

Esta opção permite desaninhar objetos JSON em colunas. Vai somente um nível mais profundo no objeto JSON.

Atenção

O campo "Desaninhar campo JSON" está disponível apenas via AMP.

Exemplo

Entrada JSON

Considere uma coluna "hours" na entrada com estes valores:

{    
    "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"}
}
Saída da ferramenta Análise JSON

Esta é a saída quando você desaninha a coluna "hours" acima:

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"}

  • Desaninhar na coluna "hours" produz colunas "hours.Tuesday", "hours.Friday", "hours.Monday" e assim por diante.

  • "hours.Tuesday" continua a carregar o objeto: {"close": "17:00", "open": "08:00"}. Você pode desaninhar isso novamente para "hours.Tuesday.close" e "hours.Tuesday.open" com outra ferramenta Análise JSON.

Esta opção é aplicável apenas a colunas que têm valores de matriz. Ela permite expandir uma coluna de matriz JSON removendo os colchetes. Cria uma linha separada para cada elemento separado por uma vírgula e atribui um ID a cada linha.

Atenção

"Nivelar matriz" está disponível apenas via AMP.

Exemplo

Entrada JSON

Considere esta entrada de matriz (array) entre colchetes onde o nome da coluna é "horas" e o valor da coluna é uma matriz (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"}
]
Saída da ferramenta Análise 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