NORMALIZE_DECFLOAT funzione scalare

La funzione NORMALIZE_DECFLOAT restituisce un valore di virgola mobile decimale uguale all'argomento di input impostato sulla sua forma più semplice; ovvero, un numero non zero con zeri a vela nel coefficiente ha quegli zeri rimossi.

Read syntax diagramSkip visual syntax diagramNORMALIZE_DECFLOAT(expression )

Lo schema è SYSIBM.

Restituire un valore di virgola mobile decimale uguale all'argomento di input impostato sulla sua forma più semplice può richiedere di rappresentare il numero in forma normalizzata dividendo il coefficiente con la potenza appropriata di dieci e regolando di conseguenza l'esponente. Un valore zero ha il suo esponente impostato a 0.

espressione
Un'espressione che restituisce un valore di qualsiasi tipo di dati numerico incorporato. Argomenti di tipo SMALLINT, INTEGER, REAL, DOUBLE o DECIMALE (p,s), dove p < = 16, vengono convertiti in DECFLOAT (16) per l'elaborazione. Argomenti di tipo BIGINT o DECIMALE (p,s), dove p > 16, sono convertiti in DECFLOAT (34) per l'elaborazione.

Il risultato della funzione è un valore DECFLOAT (16) se il tipo di espressione di espressione dopo la conversione in virgola mobile decimale è DECFLOAT (16). In caso contrario, il risultato della funzione è un valore DECFLOAT (34). Se l'argomento è un valore a virgola mobile decimale speciale, il risultato è lo stesso valore di virgola mobile decimale. Se l'argomento può essere nullo, il risultato può essere nullo; se l'argomento è nullo, il risultato è il valore nullo.

Esempi

I seguenti esempi mostrano i valori restituiti dalla funzione NORMALIZE_DECFLOAT, data una varietà di valori di virgola mobile in ingresso:
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