Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


TRUNC

📄字数 516
👁️阅读量 加载中...

功能描述

返回将 expr1 截断到 expr2 位小数位后的值,不进行四舍五入。

也可用作日期截断,详细信息请参考 TRUNC() 函数。

expr1 的类型为 FLOATDOUBLE 时,该函数等价于 TRUNCATE() 函数。

语法格式

sql
TRUNC(expr1[, expr2])

输入参数

  • expr1:待截取的值,NUMERICFLOATDOUBLE 类型,或能隐式转换为 NUMERICFLOATDOUBLE 类型的其他类型。
  • expr2:小数点后面的保留位数,可选参数,默认值为 0,表示舍弃小数部分;值可以是负数,表示截断(置零)小数点左侧的 expr2 位数字。

提示

  • NULL 无具体的类型,当第一个参数为 NULL 时,会产生异常 E10100 候选函数出现多义性,需要手动为参数指定具体的类型,如:TRUNC(NULL::NUMERIC, NULL)

输出结果

输出结果类型与第一个输入参数类型一致,任意输入参数为 NULL 时,输出结果为 NULL

示例

sql
-- 按照指定的小数位截断数值,负数表示截断小数点左边的位数
SQL> SELECT TRUNC(89.985,2),TRUNC(89.985),TRUNC(89.985,-1) FROM dual;

+--------------+-------+--------------+
|    EXPR1     | EXPR2 |    EXPR3     |
+--------------+-------+--------------+
| 8.998000e+01 | 89    | 8.000000e+01 |
+--------------+-------+--------------+