Exemple d'outil unique
L'outil Interpréter JSON comporte un exemple d'outil unique. Accédez à la page Exemples de workflows pour savoir comment accéder à cet exemple et à de nombreux autres exemples directement dans Alteryx Designer.
Utilisez Interpréter JSON pour séparer le texte JSON (JavaScript Object Notation) en un schéma de table pour le traitement en aval. Vous pouvez introduire la sortie dans l'outil Construire JSON pour la reconstruire au format JSON utilisable.
Champ JSON : sélectionnez les champs qui contiennent du texte JSON. Le champ doit contenir un JSON valide avec tout le texte d'un enregistrement dans une seule cellule. Reportez-vous à cet exemple :
{ "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" } ] }
Entrée dans Sortie : la colonne sélectionnée est incluse dans le flux de données sortant de l'outil.
Indiquez le mode d’analyse du JSON. Les choix incluent...
Sortie des valeurs dans un seul champ de type Chaîne
Sortie des valeurs dans des champs spécifiques du type de données
Annuler l'imbrication du champ JSON : cette option est disponible via AMP uniquement.
Aplatir le tableau : cette option est disponible via AMP uniquement.
Reportez-vous aux sections ci-dessous pour obtenir des informations supplémentaires et des exemples pour chacune des options ci-dessus.
Cette option affiche 2 champs : JSON_Name
et JSON_ValueString
. Selon l'exemple d'entrée ci-dessus, ces données proviennent de l'outil :
{
"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"
}
]
}
JSON_Name | JSON_ValueString |
---|---|
firstName | John |
lastName | Smith |
âge | 25 |
address.streetAddress | 21 2nd Street |
address.city | New York |
address.state | NY |
address.postalCode | 10021 |
phoneNumber.0.type | domicile |
phoneNumber.0.number | 212-555-1234 |
phoneNumber.1.type | télécopie |
phoneNumber.1.number | 646-555-4567 |
Cette option affiche les 5 champs suivants :
Nom du champ | Description |
---|---|
| Le champ JSON_Name est la « clé » d'un objet JSON (paire clé : valeur). Un point sépare la clé et toute catégorie hiérarchique. |
| Valeur de chaîne correspondante de l'objet JSON (paire clé : valeur). Si la valeur n'est pas une chaîne, la valeur [Null] s'affiche. |
| Valeur entière correspondante de l'objet JSON (paire clé : valeur). Si la valeur n'est pas un entier, la valeur [Null] s'affiche. |
| Valeur flottante correspondante de l'objet JSON (paire clé : valeur). Si la valeur n'est pas une valeur flottante, la valeur [Null] s'affiche. |
| Valeur booléenne correspondante de l'objet JSON (paire clé : valeur). Si la valeur n'est pas une valeur booléenne, la valeur [Null] s'affiche. |
{
"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"
}
]
}
JSON_Name | JSON_ValueString | JSON_ValueInt | JSON_ValueFloat | JSON_ValueBool |
---|---|---|---|---|
firstName | John | [NULL] | [NULL] | [NULL] |
lastName | Smith | [NULL] | [NULL] | [NULL] |
âge | [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 | domicile | [NULL] | [NULL] | [NULL] |
phoneNumber.0.number | 212-555-1234 | [NULL] | [NULL] | [NULL] |
phoneNumber.1.type | télécopie | [NULL] | [NULL] | [NULL] |
phoneNumber.1.number | 646-555-4567 | [NULL] | [NULL] | [NULL] |
Cette option permet d'annuler l'imbrication des objets JSON dans les colonnes. Elle va seulement un niveau plus profond dans l'objet JSON.
Avertissement
L'option Annuler l'imbrication du champ JSON est disponible via AMP uniquement.
Soit une colonne « hours » dans l'entrée avec les valeurs suivantes :
{
"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"}
}
La sortie lorsque vous annulez l'imbrication de la colonne « hours » ci-dessus est la suivante :
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"} |
L'annulation de l'imbrication dans la colonne « hours » affiche les colonnes « hours.Tuesday », « hours.Friday », « hours.Monday » et ainsi de suite.
« hours.Tuesday » continue à porter l'objet : {"close": "17:00", "open": "08:00"}. Vous pouvez de nouveau annuler l'imbrication dans hours.Tuesday.close et hours.Tuesday.open avec un autre outil Interpréter JSON.
Cette option s'applique uniquement aux colonnes contenant des valeurs de tableau. Elle vous permet de développer une colonne de tableau JSON en supprimant les crochets. Elle crée une ligne distincte pour chaque élément séparé par une virgule et attribue un ID à chaque ligne.
Avertissement
L'option Aplatir le tableau est disponible via AMP uniquement.
Soit cette entrée de tableau entre crochets dans laquelle le nom de colonne est "hours" et la valeur de colonne est un tableau :
[
{"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"}
]
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 |