NORMALIZE_DECFLOAT
NORMALIZE_DECFLOAT 関数は、最も単純な形式に設定された入力引数と等しい DECFLOAT 値を返します。
NORMALIZE_DECFLOAT 関数は、最も単純な形式に設定された入力引数と等しい 10 進浮動小数点値を返します。つまり、係数内で後続ゼロを持つゼロ以外の数値では、それらのゼロは除去されます。 この場合、係数を適切な 10 のべき乗で除算し、指数を適宜調整することにより、数値を正規形で表す必要があります。 ゼロの値ではその指数は 0 に設定されます。
- expression
- 任意の組み込み数値、文字ストリング、 またはグラフィック・ストリングのデータ・タイプの値を戻す式。 引数のデータ・タイプが SMALLINT、INTEGER、REAL、DOUBLE、DECIMAL(p,s) (p <=16)、または NUMERIC(p,s) (p <=16) の場合、引数は処理を行うために DECFLOAT(16) に変換されます。これ以外の場合、引数は処理を行うために DECFLOAT(34) に変換されます。
引数が特殊値の場合は、算術演算の一般的な規則が適用されます。 詳しくは、DECFLOAT の一般的な算術演算規則を参照してください。
この関数の結果は、10 進浮動小数点への変換後の expression のデータ・タイプが DECFLOAT(16) の値である場合は DECFLOAT(16) になります。そうでない場合、この関数の結果は DECFLOAT(34) の値になります。引数が NULL になる可能性がある場合は、結果も 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