适用于:
Databricks SQL
Databricks Runtime
使用 expr 舍入模式返回舍入运算后的 HALF_UP。
语法
round(expr [, targetScale] )
参数
expr:数值表达式。targetScaleINTEGER:常量表达式。 如果省略targetScale,则默认值为 0(整数)。在 Databricks SQL 和 Databricks Runtime 12.2 LTS 及更高版本中:如果
targetscale是负数,则舍入会执行到10的正幂。
返回
如果 expr 是 DECIMAL,则结果为 DECIMAL,其精度为 expr 和 targetScale 中较小的那个。
对于所有其他数字类型,结果类型与 expr 匹配。
在进行 HALF_UP 舍入计算时,数字 5 向上舍入。
对于 HALF_EVEN 舍入,请使用 bround 函数。
警告
在 Databricks Runtime 12.2 LTS 及以下版本中,如果 spark.sql.ansi.enabled 为 false,则溢出不会导致错误,而是会将结果“换行”。
示例
> SELECT bround(2.5, 0), round(2.5, 0);
2 3
> SELECT bround(3.5, 0), round(3.5, 0);
4 4
> SELECT bround(2.6, 0), round(2.6, 0);
3 3
> SELECT bround(2.25, 1), round(2.25, 1);
2.2 2.3
> SELECT bround(13.5, -1), round(13.5, -1);
10 10