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