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真题
