LN

LN 函数返回数字的自然对数。 LN 和 EXP 函数是逆运算。

读取语法图跳过可视语法图LN (表达式)
表达式
返回任何内置数字,字符串或图形字符串数据类型的值的表达式。 在对函数求值之前,会将字符串自变量强制转换为双精度浮点。 有关将字符串转换为双精度浮点的更多信息,请参阅 DOUBLE_PRECISION 或 DOUBLE。 自变量的值必须大于零。

如果参数的数据类型为 DECFLOAT (n) ,那么结果为 DECFLOAT (n)。 否则,结果的数据类型为双精度浮点。 如果自变量可以为空,那么结果可以为空; 如果自变量为空,那么结果为空值。

涉及 DECFLOAT 特殊值的结果: 对于十进制浮点值,特殊值处理如下:
  • LN (NaN) 返回 NaN1
  • LN(-NaN) 返回NaN1
  • LN (Infinity) 返回 Infinity
  • LN (-Infinity) 返回 NaN1
  • LNsNaN) 和 LN(-sNaN) 返回警告或错误。 1
  • LN (0) 返回-Infinity
  • 带有负自变量 (包括-Infinity) 的 LN 将返回 NaN1

示例

  • 假定主变量 NATLOG 是值为 31.62的 DECIMAL (4, 2) 主变量。
      SELECT LN(:NATLOG)
        FROM SYSIBM.SYSDUMMY1
    返回近似值 3.45。
1 如果对 SQL_DECFLOAT_WARNING 查询选项指定了 *YES ,那么将返回 NaN 并带有警告。