NORMALIZE_DECFLOAT 标量函数

NORMALIZE_DECFLOAT 函数返回一个十进制浮点值,该值等于输入自变量设置为其最简单的格式; 即,系数中带有尾部零的非零数字已除去这些零。

Read syntax diagramSkip visual syntax diagramNORMALIZE_DECFLOAT(expression )

该模式是 SYSIBM。

返回等于输入自变量集的最简单形式的十进制浮点值可能需要通过将系数除以 10 的适当幂并相应地调整指数来表示正规化形式的数字。 零值将其指数设置为 0。

expression
返回任何内置数值数据类型的值的表达式。 Arguments of type SMALLINT, INTEGER, REAL, DOUBLE, or DECIMAL(P,S), where P <= 16, are converted to DECFLOAT(16) for processing. 类型为 BIGINT 或 DECIMAL (ps) 的自变量 (其中 p > 16) 将转换为 DECFLOAT (34) 以进行处理。

如果转换为十进制浮点后的表达式的数据类型为 DECFLOAT (16) ,那么该函数的结果为 DECFLOAT (16) 值。 否则,该函数的结果是 DECFLOAT(34) 值。 如果自变量是特殊十进制浮点值,那么结果是相同的特殊十进制浮点值。 如果自变量可以为空,那么结果可以为空;如果自变量为空,那么结果为空值。

示例

以下示例显示了给定各种输入十进制浮点值的 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