Anchor | ||||
---|---|---|---|---|
|
Table of Contents | ||
---|---|---|
|
概要
キャンバス上に必要なテーブルをドラッグ&ドロップしたら、次に関連するテーブル間の結合を定義します。結合定義は複数のテーブルのデータの関連性を表現するもので、関連図の根幹です。キャンバス上に必要なテーブルをドラッグしたら、それらのテーブル間の結合を定義しなくてはいけません。複数のテーブルからのデータの関連性を表現するために、結合の定義は関連図作成において必要不可欠です。
...
結合とは
結合定義は、2つ以上のテーブルのロウ(行)を結び付け、複数のテーブルからデータを読み出すクエリーが誤った結果を返さないようにするために用いられます。テーブルには通常親子関係があります。結合とは、2つ以上のテーブルの行を結合するための句です。結合は、複数のテーブルからデータを取得するクエリーにおいて、誤った結果が返らないように定義しなければなりません。テーブルには通常、親子関係があります。
注意:Yellowfinでは、ループ結合を定義することはできません。ループ結合とは、1つのテーブルから発した結合が他のテーブルを介して最終的に元のテーブルに結合するような場合を言います。Yellowfinでは、ループ結合を作成することができません。ループ結合とは、複数のテーブルを結合し、最終的には、元のテーブルに結合が戻ってくるような場合を指します。
結合タイプ
結合 | 説明 | ||
内部結合 | 内部結合(「単純結合」とも言います)は、結合条件を満たすロウ(行)だけを返す2つ以上のテーブルの結合です。内部結合(「単純結合」ともいいます)は、結合条件を満たす行のみを返す、2つ以上のテーブルの結合です。 | ||
外部結合 | 外部結合は、内部結合(Inner Join)の結果を拡張します。結合条件を満たすすべてのロウ(行)を返したうえ、その条件を満たさないロウ(行)のいくつか、またはすべてを返します。外部結合は、内部結合の結果を拡張します。外部結合は、結合条件を満たす、すべての行を返したうえ、その条件を満たさない行のいくつか、もしくはすべてを返します。外部結合は、結合定義の結合元として「テーブルから適当なカラム」を選ぶことによって指定されます。条件を満たすものがなくても、すべての値を得たいカラムを含むテーブルを結合先に選択します。 外部結合は、結合元となる適切なテーブルを選択することで特定されます。外側のテーブルに含まれているカラムは、条件に一致しない場合でも、すべての値が返されます。 注意:ビュービルダーは、外部結合の終端に内部結合を定義することができないようになっています。外部結合を作成しようとして結合エラーが発生する場合、結合の方向を変えてみてください。ビュービルダーでは、外部結合の終端に、内部結合を定義できないようになっています。外部結合を作成中に、結合エラーが発生した場合は、結合の方向を変えてみて下さい。 例: テーブルAからテーブルBに向かう外部結合を作成中にエラーが発生する場合は、テーブルBからテーブルAに向かう結合に変更してみて下さい。テーブルAからテーブルBへの外部結合を作成してエラーが発生したなら、テーブルBからテーブルAへの外部結合を作成します。 | ||
クロス結合 | クロス結合(「直積結合」ともいいます)は、1つのテーブルのすべての行が、他のテーブルのすべての行を含む結合です。マッチングは適用されません。 |
...
クロス結合(Cartesian joinとも呼ばれます)は、1つのテーブルのすべてのロウ(行)が他のテーブルのすべてのロウ(行)を含む結合です。この場合マッチングは適用されません。
結合の作成と編集
- 新たな結合定義を作成するには結合元とするテーブルの「結合」アイコンをクリックして
「結合」ウインドウを開きます。
- 結合タイプと結合先のテーブルを選択します。
注意:テーブルに同じ名前の結合キーとなるフィールドがある場合、結合の検出オプションが使用することができます。 - 結合元のカラム、演算子、そして結合先のカラムを選択して結合条件を作成し、「追加」をクリックしてこれを結合定義に加えます。
注意:結合定義には複数の結合条件を設定することができます。結合の詳細については、以下の条件のセクションを参照してください。 - 「保存して閉じる」をクリックしてキャンバスに戻ります。
- 作成した結合定義がテーブル間の線として表示されます。
結合の削除
関連するテーブルを削除せずに既存の結合定義を削除する場合は、
- 線上にある「結合定義」アイコンをクリックします。
- 表示されたウインドウで「削除」をクリックして結合定義を削除します。新しい結合を作成する場合は、結合に含めたいテーブルの「新規結合(join)作成」アイコンをクリックします。
「結合作成」ポップアップが開きます。 - 結合したいテーブルと、結合タイプを選択します。
注意:テーブルに、同じ名前のキーとなるフィールドが含まれている場合は、「結合の検出」オプションを使用することができます。 - 以下のどちらかの方法で、結合ロジックを定義します。
- 結合元カラム、演算子、結合先カラムを選択します。「追加」ボタンをクリックして、結合に追加します。
注意:結合定義には、複数の結合を追加することができます。結合の詳細について、より詳細な情報を参照したい場合は、下記の条件の項目を確認してください - 「結合の検出」オプションを選択します。これは、各テーブルのカラム名が一致するものを検索します。両方のテーブルに同一の名前がある場合は、その両方を結合に追加します。これは、データベースの結合ロジックを考慮しません。
- 結合元カラム、演算子、結合先カラムを選択します。「追加」ボタンをクリックして、結合に追加します。
- 「保存して閉じる」をクリックして結合を保存し、ビュー作成キャンバス戻ります。
- 結合したテーブル間に線が表示されます。
結合の削除
関連するテーブルを削除することなく、既存の結合を削除したい場合は、以下の手順を実施します。
- 直線上にある、「結合アイコン」をクリックします。
- 結合作成ポップアップが開いたら、「結合(join)の削除」をクリックすることで、結合を削除することができます。