Accéder au contenu principal Passer au contenu complémentaire

Convertir des colonnes en lignes

Dans ce Job, vous allez utiliser les composants tUnpivotRow et tMap pour convertir des colonnes en lignes.

Ce Job va contenir les composants suivants :

  • un tFileInputDelimited pour lire des données à partir d'un fichier texte in.txt,
  • un tUnpivotRow pour convertir les colonnes de la table person en lignes,
  • un tMap pour générer une table de sortie,
  • et un tLogRow pour afficher les données de sortie dans la console.

Procédure

  1. Créez un Job nommé UnPivotColumnsToRows, composé d'un tFileInputDelimited, d'un tUnpivotRow et d'un tLogRow, reliés par des liens Main :
  2. Double-cliquez sur le tFileInputDelimited pour ouvrir sa vue Component.
    1. Renseignez le champ File name/Stream avec le chemin d'accès au fichier .txt créé, par exemple, "D:/file/in.txt".
    2. Configurez le champ Header à 1.
  3. Cliquez sur le bouton (...) pour modifier le schéma du composant.
    1. Supprimez les colonnes pivot_key et pivot_value.
    2. Ajoutez une colonne nommée Id, de type Integer et trois colones Name, Sex et Surgery, de type String.
  4. Double-cliquez sur le tUnpivotRow pour ajouter une colonne d'entrée nommée Id, dans le champ Row keys.
  5. Modifiez le schéma du tUnpivotRow et ajoutez une colonne de sortie nommée Id, de type Integer, comme ci-dessous.
    Note InformationsRemarque : Les deux colonnes de sortie Pivot_key et Pivot_value sont prédéfinies et sont en lecture seule dans le composant tUnpivotRow.
  6. Double-cliquez sur le composant tMap pour ouvrir son schéma et glissez les colonnes id, pivot_key et pivot_value de la table Row2 à la table out1.
  7. Modifiez respectivement le nom de pivot_key et pivot_value de la table out1 en Question et Answer.
    Note InformationsRemarque : Comme les deux colonnes (Pivot_key et Pivot_value) sont en lecture seule dans le composant tUnpivotRow, vous devez modifier le nom des colonnes dans le tMap, pour un mapping vers le schéma cible.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !