NORMALIZE_DECFLOAT スカラー関数

NORMALIZE_DECFLOAT 関数は、最も単純な形に設定された引数の結果である DECFLOAT 値を戻します。 つまり、係数の中に末尾ゼロを含むゼロ以外の数値は、係数を適切な 10 の累乗で除算し、それに応じて指数を調整することによりゼロが除去されます。 ゼロの指数は 0 に設定されます。

構文図を読むビジュアルシンタックスダイアグラムをスキップするNORMALIZE_DECFLOAT( 小数点以下表現式)

スキーマは SYSIBM です。

小数点以下表現式
引数は、DECFLOAT 値を戻す式であることが必要です。

decfloat-expression を、文字ストリングまたはグラフィック・ストリングのデータ・タイプにすることもできます。 ストリング入力は、暗黙的に DECFLOAT(34) の数値にキャストされます。

引数が特殊 10 進浮動小数点値の場合は、算術演算の一般規則が適用されます。 詳細は、 DECFLOATの一般的な算術演算ルールを参照してください

decfloat-expression のデータ・タイプが DECFLOAT(16) である場合、関数の結果は DECFLOAT(16) 値になります。 そうでない場合には、関数の結果は DECFLOAT(34) 値になります。

結果はnullになる可能性があります。引数がnullの場合、結果もnull値となります。

例: 以下の例は、さまざまな DECFLOAT 値に対して NORMALIZE_DECFLOAT 関数を使用した結果を示しています。
   NORMALIZE_DECFLOAT(DECFLOAT(2.1))         = 2.1
   NORMALIZE_DECFLOAT(DECFLOAT(-2.0))        = -2
   NORMALIZE_DECFLOAT(DECFLOAT(1.200))       = 1.2
   NORMALIZE_DECFLOAT(DECFLOAT(-120))        = -1.2E+2
   NORMALIZE_DECFLOAT(DECFLOAT(120.00))      = 1.2E+2
   NORMALIZE_DECFLOAT(DECFLOAT(0.00))        = 0
   NORMALIZE_DECFLOAT(-NAN)                  = -NAN
   NORMALIZE_DECFLOAT(-INFINITY)             = -INFINITY