# プライマリキーと外部キーの選択

利用対象...

* Big Data Platform
* Cloud API Services Platform
* Cloud Big Data Platform
* Cloud Data Fabric
* Cloud Data Management Platform
* Data Fabric
* Data Management Platform
* Data Services Platform
* MDM Platform
* Real-Time Big Data Platform

## 手順

1. [Analyzed Column Sets] (分析済みカラムセット)をクリックし、該当するビューを表示させます。

   この例では、[sales\_fact\_1998]テーブルの[customer\_id]カラムにある外部キーを、[customer]テーブルの[customer\_id]カラムにあるプライマリキーと一致させます。また、その逆も行われます。これによって2つのテーブル間の関係が調べられ、1998年にはどの顧客も注文を行ったかどうかなどがわかります。

   ![\[分析設定\]タブにある\[分析済みカラムセット\]セクションの概要。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/KeyMatching_Analysis1.png)
2. [Connection] (接続)リストで、接続するデータベースに対して適切なデータベース接続を選択します。

   Talend Studioリポジトリーで作成し、一元管理するすべての接続が、このリストに含まれています。
3. [A column Set] (Aセットのカラム)をクリックし、[Column Selection] (カラム選択)ダイアログボックスを開きます。

   外部キーの有効性をチェックする場合は、Aセットの外部キーを含んでいるカラムとBセットのプライマリキーを含んでいるカラムを選択します。
4. データベース接続内のカタログ/スキーマを参照して、一致させるカラムが含まれているテーブルに移動します。

   この例で分析するカラムは、外部キーを含んでいる[customer\_id]です。 ![分析するテーブルの選択。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/KeyMatching_Analysis2.png)

   [Table filter] (テーブルフィルター)フィールドや[Column filter] (カラムフィルター)フィールドに必要なテキストを入力すると、テーブルやカラムのリストをフィルタリングできます。リストには、入力したテキストに対応するテーブルまたはカラムのみ表示されます。
5. テーブル名をクリックし、含まれているカラムをすべて[Column Selection] (カラム選択)ダイアログボックスの右にあるパネルにリスト表示します。
6. 右側のリストで、外部キーを含んでいるカラムのチェックボックスをオンにしてOKをクリックし、次のステップに進みます。

   分析するカラムは[DQ Repository] (DQリポジトリー)ツリービューからエディターに直接ドラッグできます。

   [Analyzed Columns] (分析済みカラム)ビューにリスト表示されているいずれかのカラムを右クリックして[Show in DQ Repository view] (DQリポジトリービューで表示)を選択すると、選択されたカラムがツリービューの対応する接続の下へ自動的に配置されます。
7. [B Column Set] (Bセットのカラム)をクリックし、同じステップでプライマリキーを含んでいるカラムを選択するか、[DQ Repository] (DQリポジトリー)から右のカラムパネルにドラッグします。

   [Compute only number of A rows not in B] (B行ではなくA行の数のみ計算)チェックボックスをオンにすると、Bセットのカラムでは見つからないプライマリキーを検索します。
8. 分析エディターで[Data Filter] (データフィルター)をクリックしてビューを表示し、各分析済みカラムにフィルターを設定します。
9. F6を押してこのキー一致分析を実行します。

   確認のメッセージが表示されます。
10. 操作を続行する場合は、メッセージ内のOKをクリックします。

    この分析タイプの実行にはしばらく時間がかかります。[Analysis Results] (分析結果)ビューが開いて分析結果が自動的に表示されるまで待ちます。

## タスクの結果

![\[分析結果\]セクションからのテーブルとグラフ。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/KeyMatching_Analysis3.png)

この例では、[sales\_fact\_1998]テーブルにあるどの外部キーも[customer]テーブルにあるプライマリキーと一致しています。ただし、customerテーブルにあるプライマリキーの98.22%については、sales\_fact\_1998テーブルにある外部キーと特定できませんでした。これらのプライマリキーは、1998年に何も注文しなかった顧客を表します。

この例では、[sales\_fact\_1998]テーブルにあるどの外部キーも[customer]テーブルにあるプライマリキーと一致しています。ただし、customerテーブルにあるプライマリキーの98.22%については、sales\_fact\_1998テーブルにある外部キーと特定できませんでした。これらのプライマリキーは、1998年に何も注文しなかった顧客を表します。