ceil:向上取整
速查结论
ceil(expr [, scale]) 是 Spark SQL 中用于返回不小于 expr 的最小整数(向上取整),可指定 scale 控制舍入精度的函数。
语法
ceil(expr [, scale])
参数说明
| 参数 | 说明 |
|---|---|
expr | 要取整的数值表达式 |
scale | 可选,指定保留的小数位数。默认为 0(取整到个位)。可为负数,表示向整数高位取整 |
示例
> SELECT ceil(-0.1);
0
> SELECT ceil(5);
5
> SELECT ceil(3.1411, 3);
3.142
> SELECT ceil(3.1411, -3);
1000
常见报错与避坑指南
- 负数取整方向:
ceil()对负数向数轴正方向取整,即向零方向。例如ceil(-0.1)返回0而非-1。这与直觉上的"向上"一致——在数轴上 0 确实在 -0.1 的上方。 - scale 参数要求:
scale参数从 Spark 3.3.0 开始支持,低版本环境下只能使用ceil(expr)的单参数形式。 - 与 ceiling 的关系:
ceil()和ceiling()是完全等价的函数,行为一致。
Since: 3.3.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

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