メインコンテンツへスキップ

はじめに

注記: この記事は古いMagic ETLを対象としています。新しいMagic ETLの詳細については、「 Magic ETL 」を参照してください。
このトピックでは、Magic ETL変換フローでデータ結合を行う方法を2種類説明します。[行を追加]タイルでは、複数のDataSet行を1つのDataSetとして追加します。[データを結合]タイルでは、2つのDataSet列をJoinすることができます。 Magic ETL DataFlowの作成については、「 Magic ETL DataFlowを作成する 」を参照してください。 Data Centerについては、「 Data Centerのレイアウト 」を参照してください。

行を追加

[行を追加]タイルでは、複数のDataSet(列とデータの構造が同じもの)からの行を1つのDataSetに追加すると、重複する行を含むすべての一致データが表示されます。
注記: データ行の追加は、同じデータ構造とデータタイプになっている入力DataSetからのみ行うことができます。 [行を追加]タイルは、データ構造が一致しない場合、一致しないデータに対応する列を追加で作成します。 例えば、整数の列にテキストを追加しようとすると、整数の列とテキストの列の2つの列が作成されます。
動画 - Magic ETLで行を追加する
例えば、この変換フローを使用して…
etl_appendrows_transformflow.png
…[行を追加]タイルを実行すると、このデータと…
etl_appendrows_datain1.png
このデータを…
etl_appendrows_datain2.png
…このように変換可能です…
etl_appendrows_dataout.png
設定は以下を使用します。
etl_appendrows_sampleui.png
注記: プレビュー時に、変換されたデータでは行が必ずしも期待する順序の並びとならない場合があります。表カードでデータを表示する際に、行の順番を制御することができます。
[行を追加]タイルを設定するには:
  1. キャンバスで、 [行を追加] タイルをクリックします。
  2. (オプション)タイルの名前を変更するには、 をクリックして名前を入力します。
  3. 列を含めるオプションを選択します。

    オプション

    説明

    DataSetから列を含める

    選択したDataSetから列を含めます。

    すべての列を含める

    すべての入力DataSetから固有の列を含めます。

    シェアされた列のみ含める

    各入力DataSetで使用されている列のみを含めます。

  4. 各DataSetに実行される変更点を確認します。
ヒント: プレビューを実行してキャンバスでタイルをクリックした後、 [プレビュー] タブをクリックすると、タイルで変換されたデータをプレビューすることができます。

データを結合

[データを結合]タイルでは、特定の列(複数可)にある共通の値を使用し、2つのDataSetまたはデータ「ストリーム」の列を1つのDataSetに結合することができます。列は、両方の入力DataSetに必ず存在し、同じデータ構造である 必要があります
注記: ルックアップ列に一致する列のMagic ETLのJoinでは、大文字と小文字を区別します。
動画 - Magic ETLでのJoinのタイプを比較する
動画 - Magic ETLでの複数のJoin
例えば、この変換フローを使用して…
etl_joindata_transformflow.png
…[データを結合]タイルを実行すると、このデータと…
etl_joindata_datain1.png
このデータを…
etl_joindata_datain2.png
…このように変換可能です…
etl_joindata_dataout.png
設定は以下を使用します。
etl_joindata_sampleui.png
注記:
  • 変換したデータでは、Domoは指定した一致する列の名前に「_1」を追加します。
  • プレビュー時、変換されたデータでは行が必ずしも期待する順序の並びとならない場合があります。表カードでデータを表示する際に、行の順番を制御することができます。
[データを結合]タイルを設定するには:
  1. キャンバスで、 [データを結合] タイルをクリックします。
  2. (オプション)タイルの名前を変更するには、 をクリックして名前を入力します。
  3. データの結合で使用する列を決定します。
注記: 1)行の結合に使用する特定の列が、両方のDataSetに存在し、同じデータ構造である 必要があります 。2)Domoでは、最初の入力DataSet列を、 特定化するための列 、2番目の入力DataSet列を 一致する列 と呼びます。3)INNER JOIN、LEFT OUTER JOIN、およびFULL OUTER JOINの場合、最初の入力DataSet(左側)として固有な値を持つプライマリまたは「ルックアップ表」を指定します(特定化するための列内の値の重複は、10,000回を超えることは できません )。
  1. 最初の入力DataSet(左側)を選択し、特定化するための列を選択します。 識別列は、2番目の入力DataSetの一致する列と対になっている必要があります。
  2. 2番目の入力DataSet(右側)を選択して、一致する列を選択します。 一致列は、最初の入力DataSetの識別列と対になっている必要があります。
  3. JOINタイプのアイコンをクリックし、実行するJoinのタイプを選択します。

    JOINタイプ

    説明


    内側

    双方の入力DataSetの一致する行のみ含めます。


    左外側

    最初の入力DataSet(左側)のすべての行とそれに一致する2番目の入力DataSet(右側)の行を含めます。


    右外側

    2番目の入力DataSet(右側)のすべての行とそれに一致する最初の入力DataSet(左側)の行を含めます。


    両方の外側

    両方の入力DataSetのすべての行を含めます。

  4. (条件付き)別の列の対を指定する場合は、 [他の列と一致させる] をクリックした後、列の対を設定します。
    ヒント: プレビューを実行してキャンバスでタイルをクリックした後、 [プレビュー] タブをクリックすると、タイルで変換されたデータをプレビューすることができます。
日本語