結合操作に関する追加情報
Joinプロセッサーにより、階層データに4つの異なるタイプの結合操作を適用できます。
Inner join
このタイプの結合操作は、次の目的で使われます:
- 2 つのデータセット間で共通する値をマッチさせる。
- 一致するすべてのペアで結果セットを作成する。
結果セットは次のように決定されます。
結合ステートメントが満たされている場合(データセットLがデータセットRと一致する) | 結合ステートメントが満たされていない場合 |
---|---|
すべての一致レコードが組み合わされ、結果セット内に返されます | 一致しないレコードは無視されます |
Left outer join
このタイプの結合操作は、次の目的で使用されます。
- 2つのデータセットの間で共通の値をマッチングし、かつ、左データセット内に存在するすべての値を保持する
- これらのレコードを組み合わせた結果セットを作成する
結果セットは次のように決定されます。
結合ステートメントが満たされている場合(データセットL内のすべて+ 2つのデータセット内のマッチング) | 結合ステートメントが満たされていない場合 |
---|---|
左データセット内のすべてのレコードおよびデータセット左とデータセット右の間の一致レコードが組み合わされて、結果セット内に返されます | 一致しないレコードは無視されます |
Right outer join
このタイプの結合操作は、次の目的で使われます:
- 2 つのデータセット間で共通する値をマッチさせ、かつ右データセット内に存在する値をすべて保持する。
- これらのレコードを組み合わせた結果セットを作成する。
結果セットは次のように決定されます。
結合ステートメントが満たされている場合(データセットLおよびR内のすべて+ 2つのデータセット内のマッチング) | 結合ステートメントが満たされていない場合 |
---|---|
左データセット内のすべてのレコードおよびデータセット左とデータセット右の間の一致レコードが組み合わされて、結果セット内に返されます | 一致しないレコードは無視されます |
Full outer join
このタイプの結合操作は、次の目的で使われます:
- 左と右のデータセットでマッチする値をすべて保持する。
- これらのレコードを組み合わせた結果セットを作成する。
結果セットは次のように決定されます。
結合ステートメントが満たされている場合(データセットL内のすべて+ 2つのデータセット内のマッチング) | 結合ステートメントが満たされていない場合 |
---|---|
左データセット内のすべてのレコードおよびデータセット左とデータセット右の間の一致レコードが組み合わされて、結果セット内に返されます | 一致しないレコードは結果セット内にNULLとしてリスト表示されます |