Processeur Déplier le tableau JSON¶
Ce processeur permet de transposer les lignes contenant un tableau JSON en plusieurs lignes avec une nouvelle colonne contenant chaque valeur du tableau.
Configurer le processeur¶
Le paramètre "Règle iJSON vers tableau" fonctionne exactement de la même manière que dans le processeur "Extraire depuis un objet JSON" et doit contenir le tableau à transposer (représenté par la règle .item
).
Si le champ contient directement le tableau JSON, ajoutez simplement
.item
en tant que règle iJSON.Si l'élément final est un tableau, la règle iJSON doit se terminer par
.item
, ce qui signifie que l'objet atteint doit toujours être traité comme un tableau d'éléments dans la syntaxe iJSON.Si vous souhaitez continuer à énumérer les articles dans le tableau, vous pouvez continuer à ajouter des noms de clé après
.item
. Veillez toutefois à vous assurer que ce chemin d'accès est valide pour chaque objet dans le tableau.
Pour définir les paramètres du processeur Déplier le tableau JSON, suivez les indications du tableau ci-dessous.
Label | Description | Exemple |
---|---|---|
Champ du tableau JSON |
Nom du champ contenant le tableau JSON |
data |
Règle iJSON vers tableau |
Règle iJSON à itérer dans le tableau JSON ci-dessus. Une règle iJSON se construit avec les noms de tous les champs de la racine JSON des données à extraire, séparés par des points. |
block.metaB |
Champ de sortie |
Nom du champ qui contiendra l'élément extrait |
Exemple¶
Règles iJSON à extraire du champ du tableau JSON suivant :
[
{
"metaB" : "value1",
"int": 5,
"boolean": false
},
{
"metaB" : "value2",
"int": 6,
"boolean": true
},
]
item
transposera l'enregistrement en 2 enregistrements, qui contiennent chaque objet du tableau dans la colonne "Champ de sortie"
{ "metaA": "Joe",
"bloc" : [
{
"metaB" : "value1",
"int": 5,
"boolean": false,
"sub" : { "sub_sub" : "sub_value"}
},
{
"metaB" : "value2",
"int": 6,
"boolean": true,
"sub" : { "sub_sub" : "other_sub_value"}
},
]
}
bloc.item
transposera l'enregistrement en 2 enregistrements, qui contiennent chaque objet du tableau dans la colonne "Champ de sortie"bloc.item.sub
transposera l'enregistrement en 2 enregistrements, qui contiennent chaque objet à l'intérieur du tag "sub" de chaque objet du tableau.