目次

Search

  1. はじめに
  2. トランスフォーメーション
  3. ソーストランスフォーメーション
  4. ターゲットトランスフォーメーション
  5. アクセスポリシートランスフォーメーション
  6. B2B Data Transformation
  7. アグリゲータトランスフォーメーション
  8. クレンジングトランスフォーメーション
  9. データマスキングトランスフォーメーション
  10. データサービストランスフォーメーション
  11. 重複排除トランスフォーメーション
  12. 式トランスフォーメーション
  13. フィルタトランスフォーメーション
  14. 階層ビルダートランスフォーメーション
  15. 階層パーサートランスフォーメーション
  16. 階層プロセッサトランスフォーメーション
  17. 入力トランスフォーメーション
  18. Javaトランスフォーメーション
  19. JavaトランスフォーメーションAPIリファレンス
  20. ジョイナトランスフォーメーション
  21. ラベラトランスフォーメーション
  22. ルックアップトランスフォーメーション
  23. 機械学習トランスフォーメーション
  24. マップレットトランスフォーメーション
  25. ノーマライザトランスフォーメーション
  26. 出力トランスフォーメーション
  27. 解析トランスフォーメーション
  28. Pythonトランスフォーメーション
  29. ランクトランスフォーメーション
  30. ルータトランスフォーメーション
  31. ルール仕様トランスフォーメーション
  32. シーケンスジェネレータトランスフォーメーション
  33. ソータートランスフォーメーション
  34. SQLトランスフォーメーション
  35. 構造パーサートランスフォーメーション
  36. トランザクション制御トランスフォーメーション
  37. 共有体トランスフォーメーション
  38. Velocityトランスフォーメーション
  39. ベリファイヤトランスフォーメーション
  40. Webサービストランスフォーメーション

トランスフォーメーション

トランスフォーメーション

ルックアップSQLオーバーライド

ルックアップSQLオーバーライド

マッピングにルックアップトランスフォーメーションが含まれる場合、
マッピング
タスクでは、ルックアップトランスフォーメーションで設定するフィールドおよびプロパティに基づいてルックアップオブジェクトを照会します。
マッピング
タスクは、データの最初の行がルックアップトランスフォーメーションに入ると、デフォルトのルックアップクエリを実行します。ルックアップトランスフォーメーションでリレーショナルルックアップを実行すると、デフォルトのクエリをオーバーライドできます。
デフォルトのクエリには、マッピング内のすべてのルックアップフィールドを含むSELECT文が含まれています。また、SELECT文には、すべてのカラムをルックアップトランスフォーメーションの表示と同じ順序で並べたORDER BY句も含まれています。デフォルトのクエリを表示するには、
マッピング
タスクを実行します。デフォルトのクエリがログファイルに表示されます。
ORDER BY句を変更する場合は、WHERE句を追加するかルックアップデータをキャッシュする前に変換すると、デフォルトのクエリをオーバーライドできます。例えば、データベース関数を使用して、マッピングで使用されるフィールドのデータ型およびフォーマットと一致するようにルックアップテーブルのデータ型またはフォーマットを調整できます。または、デフォルトのクエリをオーバーライドして複数のテーブルを照会できます。
デフォルトのクエリは、ルックアップトランスフォーメーションの
[詳細]
タブでオーバーライドします。
[ルックアップSQLオーバーライド]
フィールドに、SELECT文をすべて入力します。クエリの各カラムにはエイリアスを使用します。ORDER BY句を変更する場合は、クエリの末尾に「
--
」を追加して
マッピング
タスクで生成するORDER BY句を抑止する必要があります。

ルックアップトランスフォーメーションは、Microsoft SQL ServerのテーブルALC_ORDER_DETAILSから次のフィールドを返します。
テーブルALC_ORDER_DETAILSの各戻りフィールド([ORDERID]、[PRODUCTID]、[UNITPRICE]、[QUANTITY]、[DISCOUNT])が一覧表示されたルックアップトランスフォーメーションの[戻りフィールド]タブ。
トランスフォーメーションは、以下のルックアップ条件を使用します。
ORDERID=in_ORDERID
マッピングタスクを実行すると、ログファイルに次のクエリが表示されます。
LKPDP_1> DBG_21097 [2018-11-07 14:11:33.509] Lookup Transformation [lkp_ALC_ORDER_DETAILS]: Default sql to create lookup cache: SELECT PRODUCTID,UNITPRICE,QUANTITY,DISCOUNT,ORDERID FROM "icsauto"."ALC_ORDER_DETAILS" ORDER BY ORDERID,PRODUCTID,UNITPRICE,QUANTITY,DISCOUNT
ORDER BY句をオーバーライドしてPRODUCTIDの順に並べ替えるには、
[詳細]
タブの
[ルックアップSQLオーバーライド]
フィールドに次のクエリを入力します。
SELECT PRODUCTID AS PRODUCTID, UNITPRICE AS UNITPRICE, QUANTITY AS QUANTITY, DISCOUNT AS DISCOUNT, ORDERID AS ORDERID FROM "icsauto"."ALC_ORDER_DETAILS" ORDER BY PRODUCTID --
マッピングタスクを再度実行すると、ログファイルに次のクエリが表示されます。
LKPDP_1> DBG_21312 [2018-11-07 14:14:36.734] Lookup Transformation [lkp_ALC_ORDER_DETAILS]: Lookup override sql to create cache: SELECT PRODUCTID AS PRODUCTID, UNITPRICE AS UNITPRICE, QUANTITY AS QUANTITY, DISCOUNT AS DISCOUNT, ORDERID AS ORDERID FROM "icsauto"."ALC_ORDER_DETAILS" ORDER BY PRODUCTID -- ORDER BY ORDERID,PRODUCTID,UNITPRICE,QUANTITY,DISCOUNT