Sap-idt-joins-in-data-foundation
SAP IDT-データファンデーションに参加
結合は、データファンデーションのテーブルを結合するために使用されます。 テーブルでのデータのクエリ方法を定義します。 結合は、テーブルの1つの列を他の列にリンクするときに定義されます。 結合を手動で挿入するか、結合の検出オプションをクリックして自動的に挿入することができます。
新しい結合を挿入するには、[挿入]→[結合の挿入]に移動します。
ドロップダウンから表1を選択し、データファンデーションのすべてのテーブルからドロップダウンから表2を選択します。 結合する表1および表2から列を選択します。 挿入する結合のタイプを選択→OK。
既存の結合の編集
既存の結合を編集するには、結合をダブルクリックすると、上記のように結合編集エディターが開きます。
派生テーブル
派生テーブルは、計算および関数を使用して他のテーブルを結合するデータファンデーションの仮想テーブルです。
あなたは、次の目的のために派生テーブルを使用することができます-
- 他のテーブルの列を持つテーブルを作成します。 列定義には、複雑な計算と関数を含めることができます。
- 2つ以上のテーブルを組み合わせた単一のテーブルを作成します。
- さまざまなテーブルから選択した列を含むテーブルを作成します。
- 派生テーブルを挿入するには、テーブルヘッダーを選択し、右クリックして[挿入]→派生テーブルを選択します。
一意の名前を入力し、[OK]をクリックします。
テーブルエイリアス
エイリアステーブルは、データファンデーションの標準テーブルへの参照として知られています。 Aliasテーブルのデータは、元のテーブルと完全に同じです。
エイリアステーブルは、データファンデーションレイヤーの結合パスでループを解除するために使用されます。 エイリアステーブルを使用して、テーブルの名前を変更することもできます。
エイリアスを挿入する
エイリアステーブルを作成するには、エイリアスを作成するテーブルを選択します。 テーブルヘッダーを右クリック→挿入→エイリアステーブル。 複数のテーブルにエイリアステーブルを作成するには、Ctrlキーを使用して複数のテーブルを選択します。
エイリアスを使用して、ループを解除し、ファントラップとキャズムトラップの問題を処理します。
エイリアスを検出する
エイリアスを検出するには、データファンデーションレイヤーの下の[検出]に移動します。
テーブルのエイリアスを検出するには、次の条件が満たされている必要があります。
コンテキスト
エイリアステーブルを使用してループを解除できない場合、データファンデーションのループを解除するためにもコンテキストが使用されます。
単一のディメンションテーブルに接続されている複数のファクトテーブルがある場合、この場合はファクトテーブルごとにコンテキストを作成します。
コンテキストでは、結合のために定義された3つの状態があります-
含まれる結合-曖昧なスキーマの一部では、コンテキストは含まれる結合でパスを定義することでループを解決します。
除外された結合-曖昧なスキーマの一部では、除外された結合はコンテキストが決してとらないパスを定義します。
ニュートラルジョイン-曖昧ではないスキーマの一部にあり、常にコンテキストのクエリパスに含まれます。 明示的に含まれたり除外されたりしない結合は中立です。
コンテキストは、手動で定義するか、[コンテキストの検出]オプションをクリックして定義できます。
コンテキストを検出するには→ローカルプロジェクトビューでデータファンデーション名をダブルクリックして、データファンデーションエディタを開きます。
[エイリアスとコンテキスト]ペインから、[コンテキストの検出]アイコンを選択します。
このコマンドは、結合パスを分析し、コンテキストを提案して、エイリアステーブルでは解決できないループを解決します。
次に、[コンテキストの検出]ダイアログボックスを開き、挿入するコンテキストを選択します。
データファンデーションビューで強調表示されたコンテキストを表示するには、提案されたコンテキスト名をクリックします。 コンテキストに含まれる結合は、含まれるアイコンContext Iconで示されます。
除外された結合は、除外アイコンExcluded Iconで表示されます。 [OK]をクリックして、選択したコンテキストをデータファンデーションに挿入します。