複数のキー フィールドの使用

2 つの状況では、複数の共通キー フィールドを使用して、テーブルを正確に結合するか関連付ける必要があります。

使用... 処理するとき...
複数のキー フィールドの組み合わせ 1 つの共通キー フィールドのみの値では一意性が保証されず、2 つのテーブルを正確に結合または関連付けることができません。 業者 ID フィールドとロケーション フィールドの両方を使用して、2 つのテーブルを正確に結合または関連付ける必要があります。
個別の複数のキー フィールド 2 つのテーブルを結合または関連付けるために必要な値が、結合または関連付け対象のテーブルのどちらか一方で 2 つ(以上)のキー フィールドに分かれています。 Name でテーブルを結合するか関連付けます。主または親テーブルには単一の Name フィールドがあります。ただし、名前は副または子テーブルの 2 つのフィールドにいずれかで発生します。

複数のキー フィールドを組み合わせて使用

1 つの共通キー フィールドのみの値では一意性が保証されず、2 つのテーブルを正確に結合または関連付けることができない場合は、複数の共通キー フィールドを組み合わせて使用します。

共通キー フィールドとして Vendor_ID を使用して、2 つのテーブルを結合するか、関連付けます。ただし、一部の業者には同じ業者 ID の複数のロケーションがあります。

この例では、業者 A4538 にはバンクーバー、リッチモンド、コキットラムにロケーションがあります。

1 つのキー フィールド

Vendor_ID のみを使用してテーブルを結合または関連付けようとすると、副テーブルまたは子テーブルのレコードのうち、最初に一致した業者の場所以外のレコードは、結合されるテーブル(多対一結合)または関連付けられるテーブルには含まれないので、テーブル間による場所の一致に誤りが生じます。

複数のキー フィールドの組み合わせ

製造元の場所をすべて出力し、かつ場所を正確に一致させるには、両方のテーブルで、製造元 ID(Vendor_ID)と場所(Location)の両フィールドをキー フィールドとして使用する必要があります。複数のキー フィールドを組み合わせれば、各フィールドの値によって 1 つの一意な値が形成され、これを使用して 2 つのテーブル間でレコードを確実に一致させることができます。

テーブルの結合時、複数のキー フィールドを組み合わせて指定する

テーブルを結合するときには、次の方法を使用して、複数のキー フィールドを組み合わせて指定できます。

  • 結合]ダイアログ ボックスで複数のキー フィールドを選択します。
  • 各テーブルで、2 つ以上のキー フィールドを連結(加算)する演算フィールドを作成し、その演算フィールドを使用してテーブルを結合します。詳細については、キー フィールドの連結を参照してください。

結合]ダイアログ ボックスで複数のキー フィールドを選択します。

結合]ダイアログ ボックスで各テーブルの複数のキーを選択すると、次の条件が適用されます。

データ構造 1 つのキー フィールドの使用時に適用される、データ構造およびデータ形式の要件は、複数のキー フィールドの使用時に各テーブルで対応させるキー フィールドにも適用します。詳細については、データ構造およびデータ書式の要件を参照してください。
データ型 1 つのテーブル内で、複数キー フィールドのデータが異なっていてもかまいません(氏名の苗字、名前、および誕生日など)。
並べ替え順序 複数のキー フィールドを選択すると、出力テーブルでは並べ替え順序が入れ子になります。ただし、これは結合の実行で主テーブルが事前に並べ替えられている([主テーブルをあらかじめ並べ替える]オプションを選択)ことを前提とします。キー フィールドを選択する順序が、入れ子の並べ替え順序の優先度を示します。

テーブルの関連付け時、複数のキー フィールドを組み合わせて指定する

テーブルを関連付けるときには、次の方法を使用して、複数のキー フィールドを組み合わせて指定できます。

  • 各テーブルで、2 つ以上のキー フィールドを連結(加算)する演算フィールドを作成し、その演算フィールドを使用してテーブルを関連付けます。詳細については、キー フィールドの連結を参照してください。
  • 各テーブルで、複数のキー フィールドのデータを含めることができる長さのフィールドを新たに定義し、その新しいフィールドを使用してテーブルを関連付けます。詳細については、物理フィールドを定義するを参照してください。

メモ

結合とは異なり、テーブルの関連付けを行う場合、一組みのテーブルに対して選択できるキー フィールドは 1 つのみです。このため、複数のキー フィールドを組み合わせて使用するには、上のいずれかの方法を用いる必要があります。

複数のキー フィールドにデータを含む新しいフィールドの定義

複数のキーフィールドにデータを含む新しいフィールドを定義するときには、次の条件が適用されます。

データ構造 1 つのキー フィールドの使用時に適用される、データ構造およびデータ形式の要件は、複数のキー フィールドを含む新しく作成されたフィールドにも適用します。詳細については、データ構造およびデータ書式の要件を参照してください。
フィールドの隣接 この方法は、その複数のキー フィールドが各テーブルで隣接している場合にのみ機能します。フィールドが隣接されるようにするには、対象のフィールドを必要な順序で選択し、新しいテーブルに抽出することで実現できます。
データ型

複数のキー フィールド全体を含めることができる新しいフィールドのデータ型は、ソース データと対応しています。

複数のキー フィールドのデータ型がそれぞれ異なる場合は、テーブルの関連付けに使用する目的のため、それらを文字フィールドとする新しいフィールドを作成できます。

複数のキー フィールドを個別に使用

2 つのテーブルを正確に結合または関連付けるために必要な値が、結合または関連付け対象のテーブルのどちらか一方で 2 つ(以上)のキー フィールドに含まれている場合、それらの複数のキー フィールドを個別に使用する必要があります。

複数のキー フィールドのフィールドごとに、結合作業を 1 回ずつ実行するか、関連付けを 1 つずつ設定し、完全なデータ セットがある統合された最終的な結果を生成します。

テーブルの結合または関連付けで複数のキー フィールドのうち 1 つしか使用しなかった場合は、その結果のデータは不完全なものになります。

例 1:副または子テーブルの 2 つのキー フィールド

名前を用いて 2 つのテーブルを結合または関連付けます。主または親テーブルにはの Name フィールドがあります。ただし、副テーブルまたは子テーブルには Name_1 および Name_2 という別々の名前フィールドがあります。副テーブルまたは子テーブルで、一致の対象となる名前は 2 つの名前フィールドのうちどちらかに存在します。

テーブルの結合

名前の間ですべての可能な一致を取り込むには、2 つの連続結合を実行し、副テーブルのキー フィールドのいずれかのみを使用して各結合を行う必要があります。1 番目に行った結合の出力テーブルを、2 番目に行う結合の主テーブルとして使用します。

各結合を実行する場合、一致および不一致のどちらの主レコード(すべての主レコード)も含める結合タイプを選択する必要があります。このため、処理のどの時点でも不一致の主レコードを失いません。

メモ

以下の図は、結合されるテーブルのキー フィールドのみを示します。通常、テーブルにはキー フィールド以外のデータも含まれています。

テーブルの関連付け

名前の間ですべての可能な結合を取り込むには、親キー フィールドと 2 番目の子キー フィールドの間で追加の関係の子テーブルの追加インスタンスを追加する必要があります。

関係]ダイアログ ボックスの[テーブルの追加]ボタンをクリックし、適切なテーブルを選択して子テーブルのインスタンスを追加します。

例 2:主または親テーブルの 2 つのキー フィールド

税フィルター ID 番号を用いて 2 つのテーブルを結合または関連付けます。主または親テーブルには税還付金上方が含まれ、副または子テーブルは税フィルター ID 番号を社会保障番号にマッピングします。

主テーブルまたは親テーブルには、主申告者(本人)の ID 番号を含む ID フィールドがあり、副申告者(配偶者)が存在する場合は、その ID 番号を含む Secondary_ID フィールドがあります。副テーブルまたは子テーブルには、すべての人の ID 番号を含む ID フィールドがあります。社会保障番号が主申告者と副申告者の両方に結び付けられた、結合データまたは関連付けデータを生成します。

テーブルの結合

社会保障番号を主および副税フィルターの両方に関連付けるには、2 つの連続結合を実行し、主テーブルのキー フィールドのいずれかのみを使用して各結合を行う必要があります。1 番目に行った結合の出力テーブルを、2 番目に行う結合の主テーブルとして使用します。

各結合を実行する場合、一致および不一致のどちらの主レコード(すべての主レコード)も含める結合タイプを選択する必要があります。このため、処理のどの時点でも不一致の主レコードを失いません。

メモ

以下の図は、結合されるテーブルのキー フィールドのみを示します。通常、テーブルにはキー フィールド以外のデータも含まれています。

テーブルの関連付け

社会保障番号を主および副税フィルターの両方に関連付けるには、2 番目の親キー フィールドと子キー フィールドの間の関係の子テーブルの追加インスタンスを追加する必要があります。

関係]ダイアログ ボックスの[テーブルの追加]ボタンをクリックし、適切なテーブルを選択して子テーブルのインスタンスを追加します。

Analytics 14.1 ヘルプ