跳到主要内容

bround:银行家舍入

速查结论

bround(expr, d) 是 Spark SQL 中用于使用半偶数舍入模式(HALF_EVEN)将 expr 四舍五入到 d 位小数的函数。

语法

bround(expr, d)

参数说明

参数说明
expr要舍入的数值表达式
d保留的小数位数,可为负数(表示向整数高位舍入)

示例

> SELECT bround(2.5, 0);
2
> SELECT bround(25, -1);
20

常见报错与避坑指南

  • HALF_EVEN 与 ROUND 的区别bround() 使用 HALF_EVEN(银行家舍入)模式,当小数部分恰好为 5 时向最近的偶数舍入。例如 bround(2.5, 0) 返回 2,而 round(2.5, 0) 返回 3。财务计算中推荐使用 bround() 以减少累计舍入误差。
  • 负数精度:当 d 为负数时,舍入发生在小数点左侧,例如 bround(25, -1) 对十位进行舍入返回 20

Since: 2.0.0

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

备注「数据仓库技术」加入社群,每日一道大厂SQL真题

交流微信二维码

你可能还想看