前のページ|次のページ

自動結合機能の動作

機能概要

SAS Visual Data Builder は、ユーザーがテーブルやクエリをワークスペースに追加した場合、それらのテーブルやデータクエリを自動的に結合しようとします。ユーザーがテーブルやデータクエリをワークスペースにドラッグアンドドロップすると、そのテーブルやクエリに関する情報がSAS Metadata Serverから取り出されます。サブクエリの場合、そのサブクエリの出力テーブルのメタデータが取り出されます。

外部キーと主キーの使用

主キーまたは外部キー情報が、ユーザーがワークスペースにドラッグアンドドロップしたテーブルのメタデータ内に登録されている場合、Data Builderはその主キーおよび外部キー情報を取り出します。
次に、Data Builderは、ワークスペース上の既存の各テーブルに対して、それらのテーブルがワークスペースに追加されたのと同じ順番で、この操作を繰り返します。Data Builderは各テーブルの主キーおよび外部キー情報を取り出した後、その長さ、種類、名前を、新しく追加されたテーブルのキー列と比較します。一致が見つかった場合、そのテーブルは結合に使用され、そのテーブルの列が結合条件として追加されます。可能な場合、Data Builderは、これら2つのテーブル間での一致を継続して検索することにより、結合条件を追加します。結合テーブルの集合が特定されると、Data Builderは、ワークスペース上の既存のテーブルに対して上記の操作を反復することを止めます。

名前による一致

ワークスペースにドラッグアンドドロップされたテーブルに主キーまたは外部キー情報が存在しない場合、Data Builderは、ワークスペース上にすでに存在するテーブルの主キーまたは外部キー情報を利用しません。
Data Builderは、新しく追加されたテーブル内にあるすべての列の列情報を取り出します。次に、Data Builderは、ワークスペース上の既存の各テーブルに対して、それらのテーブルがワークスペースに追加されたのと同じ順番で、この操作を繰り返します。Data Builderは、既存のテーブル内にある各列の長さ、種類、名前を、新しく追加されたテーブル内にある各列と比較します。一致が見つかった場合、そのテーブルは結合に使用され、そのテーブルの列が結合条件として追加されます。Data Builderは、2つのテーブル間の一致の検索を停止し、ワークスペース上の既存のテーブルに対する上記の操作の反復を停止します。

結合の種類の選択

Data Builderは、キーの比較や名前の一致により一致列の最初の集合を見つけた場合、それら2つのテーブルの結合の種類を設定します。Data Builderは、これらの列のメタデータをチェックすることにより、それらの列がNULL値可能であるかどうかを判定します。(多くのサードパーティベンダのデータベースは、SQLでデータベース内にテーブルを作成する際の列に関する制約として、 NOT NULL をサポートしています。この制約により、列に欠損値が存在しないことが保証されます。)Data Builderは、次の手順に従って結合の種類を設定します。
  1. 既存のテーブルの列はNULL値可能でないが、新しく追加されたテーブルの列はNULL値可能である場合、左外部結合を使用します。
  2. 既存のテーブルの列はNULL値可能であるが、新しく追加されたテーブルの列はNULL値可能でない場合、右外部結合を使用します。
  3. 既存のテーブルと新しく追加されたテーブルの列がどちらもNULL値可能である場合、それらのテーブルは全外部結合を使用します。
  4. 上記の条件のいずれにも合致しない場合、それらのテーブルは内部結合を使用します。
結合の種類を指定するには、結合アイコン(結合アイコン)を右クリックし、メニューから結合のタイプを選択します。
前のページ|次のページ|ページの先頭へ