# 結合プロセッサー

1 つ以上のキーに基づいて 2 つのフローを結合します。

Joinプロセッサーを使用すると、2 つの出力フローからのデータを結合できます。共通キーを選択し、結合のタイプを選択して、出力フローでデータを結合します。

## 使用方法

Join プロセッサーには 2 つの入力フローが必要ですが、生成できる出力フローは 1 つだけです。

## [Properties] (プロパティ)

Joinを使用してレコードを結合するために設定できるプロパティについて説明します。

設定

| Property | 設定 |
| --- | --- |
| [Join type] (結合タイプ) | 必要な結合タイプをリストから選択します。<br><br><ul> <li> <p><span>[Inner join] (内部結合)</span>: この結合タイプを使用すると、フィールド値がマッチする 2 つの入力が比較され、結果ペアがすべて一覧表示されます。互いに一致しない値は、結果セット内で無視されます。</p> </li> <li> <p><span>[Left outer join] (左外部結合)</span>: このオプションを使用すると、結合した出力リストにある左データセットの値がすべて保持されます。左データセット内のどの行とも一致しない値は、結果セットにNULLとしてリスト表示されます。</p> </li> <li> <p><span>[Right outer join] (右外部結合)</span>: このオプションを使用すると、結合した出力リストにある右データセットの値がすべて保持されます。右データセット内のどの行とも一致しない値は、結果セットにNULLとしてリスト表示されます。</p> </li> <li> <p><span>[Full outer join] (完全外部結合)</span>: このオプションを使用すると、左右両方の外部結合が組み合わされます。マッチする値を持たない値はすべて、結果セットに Null としてリスト表示されます。</p> </li> </ul> |
| [Conditions] (条件) | <ul> <li> <p><span>[Left key] (左キー)</span>: 左データセット内のフィールドを選択、または入力します。入力時にオートコンプリートが利用できます。</p> </li> <li> <p><span>[Right key] (右キー)</span>: 右データセット内のフィールドを選択、または入力します。入力時にオートコンプリートが利用できます。</p> </li> </ul> |

プロセッサーの名前を変更したり、その説明を変更したりするには、[プロパティ] パネルで変更する名前または説明にマウスを合わせ、[the 編集 icon ] アイコンをクリックします。

## 結合操作に関する追加情報

Join (結合) プロセッサーにより、異なる 4 タイプの結合操作をデータに適用できます。

### 内部結合

このタイプの結合操作は、次の目的で使われます:

* 2つのデータセットの間で共通の値をマッチングする。

* マッチするすべてのペアで結果セットを作成する。

![内部結合のグラフィカルな表現。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/inner_join.png)

結果セットは次のように決定されます:

| 結合ステートメントが満たされた場合 (データセット L がデータセット R と一致する場合) | 結合ステートメントが満たされない場合 |
| --- | --- |
| 一致するすべてのレコードが結合され、結果セットで返されます。 | 一致しないレコードは無視されます。 |

### 左外部結合

このタイプの結合操作は、次の目的で使われます:

* 2 つのデータセット間で共通する値をマッチさせ、かつ左データセット内に存在する値をすべて保持する。

* これらのレコードを組み合わせた結果セットを作成する。

![左外部結合のグラフィカルな表現。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/left_outer_join.png)

結果セットは次のように決定されます:

| 結合ステートメントが満たされた場合 (データセット L にあるすべての内容が 2 つのデータセットに一致している場合) | 結合ステートメントが満たされない場合 |
| --- | --- |
| 左データセット内のすべてのレコードと、データセットの左とデータセットの右の間で一致するレコードが結合され、結果セットに返されます。 | 一致しないレコードは無視されます。 |

### 右外部結合

このタイプの結合操作は、次の目的で使われます:

* 2つのデータセットの間で共通の値をマッチングし、かつ、右データセット内に存在するすべての値を保持する。

* これらのレコードを組み合わせた結果セットを作成する。

![右外部結合のグラフィカルな表現。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/right_outer_join.png)

結果セットは次のように決定されます:

| 結合ステートメントが満たされた場合 (データセット L と R にあるすべての内容が 2 つのデータセットに一致している場合) | 結合ステートメントが満たされない場合 |
| --- | --- |
| 左データセット内のすべてのレコードと、データセットの左とデータセットの右の間で一致するレコードが結合され、結果セットに返されます。 | 一致しないレコードは無視されます。 |

### 完全外部結合

このタイプの結合操作は、次の目的で使われます:

* 左と右のデータセット内の一致する値をすべて保持する。

* これらのレコードを組み合わせた結果セットを作成する。

![完全外部結合のグラフィカルな表現。](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Resources/Images/Dataflow/full_outer_join.png)

結果セットは次のように決定されます:

| 結合ステートメントが満たされた場合 (データセット L にあるすべての内容が 2 つのデータセットに一致している場合) | 結合ステートメントが満たされない場合 |
| --- | --- |
| 左データセット内のすべてのレコードと、データセットの左とデータセットの右の間で一致するレコードが結合され、結果セットに返されます。 | 一致しないレコードは結果セットに NULL として一覧表示されます。 |