12

Informatica PowerCenter Designer でケース ステートメントを作成するのを手伝ってくれる人はいますか? 私は Informatica にかなり慣れていないため、経験が限られているため、ケース ステートメントはサポートされていないと感じています。同様の機能を持つデコード関数がありますが、構文の良い例を見つけることができません。

インフォマティカでケースステートメント/デコード機能を使用する方法について、誰かが私にいくつかの具体的な例を教えていただければ幸いです。

助けてくれてありがとう!

4

2 に答える 2

20

CASEその通りです -ステートメントはありませんが、それDECODEをシミュレートするために使用できます:

DECODE( TRUE
      , DECIMAL_PORT > 0, 'positive value'
      , DECIMAL_PORT < 0, 'negative value'
                        , 'zero' )

これは、次の Transact-SQLCASEステートメントと同等です。

CASE
  WHEN DECIMAL_PORT > 0 THEN 'positive value'
  WHEN DECIMAL_PORT < 0 THEN 'negative value'
  ELSE 'zero'
END

仕組みは次のとおりです。

  • 最初のパラメーターはハードコードされたTRUE値です。
  • 偶数パラメータ (2 番目、4 番目など) が条件であり、
  • 奇数パラメーター (3 番目、5 番目など) は戻り値です
  • 最後のパラメータはデフォルトの戻り値です
  • 1 番目のパラメーターの値に評価される最初の条件 (つまり、真である最初の条件) によって、返される値が決まります。
  • どの条件も満たされない場合、最後のパラメーターが返されます。
于 2012-04-02T16:14:22.300 に答える
3

条件付きロジックを実装するためによく使用されるIIF()関数も見てください。

IIF(DECIMAL_PORT > 0, 'positive value', IIF(DECIMAL_PORT < 0 ,'negative value', 'zero'))
于 2012-04-02T17:47:07.777 に答える