# tJoinとtMapコンポーネントの類似点と相違点

tJoinまたはtMapはどちらも、異なるデータソース間の結合の作成に使えます。ただし、tJoinは2つのデータソース間の結合を作成するためにのみ使われる基本的なコンポーネントですが、tMapにはさまざまなニーズに合わせて設計された他のプロパティがあります。

tJoinとtMapの違いは以下のテーブルで確認できます。

| tJoinの特性 | tMap固有の特性 |
| --- | --- |
| メインとリジェクトの出力フロー | 複数の出力フロー |
| 式のキー間の完全一致 | 結合条件を提供するカラム内の式 |
| 1つの一致モデルのサポート | 複数の一致モデルのサポート(一意の一致、最初の一致、すべて一致) |
| 1つのルックアップフローのサポート | <ul> <li>さまざまなルックアップフローをサポートし、複数のルックアップフローを並行してロードできます。</li> <li>ディスクへのルックアップデータの保存。</li> <li>各メインレコードのルックアップデータのリロード。</li> <li>[die on error] (エラー発生時に強制終了)オプションのサポート。</li> </ul> |

情報メモ注: tMapは、tJoinよりも複雑なケースで使える高度なコンポーネントです。ただし、tMapはコンパイル中により多くのコードを生成し、ジョブの実行中にメモリにデータをロードするためにより多くのスペースと時間を要する場合があります。一般的には、tJoinは必要に応じて使います。それ以外の場合はtMapを使います。

詳細は、[完全一致、最初の一致、およびすべての一致の間の違い](https://help.qlik.com/talend/ja-JP/components/8.0/tmap/differences-between-unique-match-first-match-and-all-matches "この記事では、例を使用して3つの一致モデルの違いを説明します。")をご覧ください。