![]() 前へ |
![]() 次へ |
マッピングの設計の際は、次の事項を考慮してください。
オペレーティング・モード: Match-Merge演算子を含むマッピングは、セット・ベース・モードの場合のみ実行できます。演算子により、セット・ベースまたは行ベースの入力を使用してセット・ベースまたは行ベースの出力が生成されます。SQLはセット・ベースのため、一度に一連のレコードが処理されます。PL/SQLは行ベースのため、各行が個別に処理されます。Match-Merge演算子は、レコードの照合時に各行をソース内の後続行と比較して行ベースのコードのみを生成します。
Match-Merge前のSQLベースの演算子: Match-Merge演算子はセット・ベースのSQL入力を受け入れますが、生成するのは行ベースのPL/SQL出力のみです。SQLコードのみを生成する演算子は、Match-Merge演算子よりも前に配置する必要があります。たとえば、ジョイナ演算子、参照演算子および集合演算子はセット・ベースのSQL出力を生成するため、Match-Mergeよりも前に配置する必要があります。セット・ベースの演算子がMatch-Mergeよりも後にあるマッピングは無効です。セット・ベースの演算子を使用して照合/マージ・マッピングの出力を処理する必要がある場合は、中間表を使用して出力をステージングしてください。
PL/SQL入力: Match-Merge演算子には、他のMatch-Merge演算子以外からのSQL入力が必要です。「ハウスホールドでの2つのMatch-Merge演算子の使用」を参照してください。Match-Mergeの前に、Name and Address演算子のようにPL/SQL出力のみを生成する演算子を使用する場合は、最初にデータをステージング表にロードする必要があります。
Match-Merge演算子からのデータの詳細化: データを大幅に詳細化するには、あるMatch-Merge演算子からのXREF出力を別のMatch-Merge演算子にマップします。このシナリオは、Match-Merge演算子のSQL入力ルールに対する1つの例外です。追加の設計要素を使用すると、第2のMatch-Merge演算子はPL/SQLを受け入れます。詳細は、「例: ハウスホールドでの2つのMatch-Merge演算子の使用」を参照してください。