首页/数据/SQL 速查/CEIL / FLOOR 向上向下取整
函数速查60 条

CEIL / FLOOR 向上向下取整

向正负方向取整:CEIL 向上(天花板)、FLOOR 向下(地板);分页总页数、资源规格向上取整等场景常用。

SQL 速查数据更新于 2026-10-12

示例

示例
SELECT CEIL(1.2), FLOOR(1.8);     -- 2, 1
SELECT CEIL(-1.5), FLOOR(-1.5);  -- -1, -2

-- 总页数:向上取整
SELECT CEIL(COUNT(*) / 20) AS pages FROM orders;
别名CEILING 与 CEIL 等价(两库都支持)
负数向数轴方向取整:CEIL(-1.5)=-1、FLOOR(-1.5)=-2
返回类型PostgreSQL 保留 numeric/dp 类型;MySQL 视参数类型返回整数或小数

易错点

  • 跨库整数除法差异:PostgreSQL 里 CEIL(5/2) 先算 5/2=2 再取整得 2;MySQL 得 3。要小数先 CAST 或乘 1.0
  • 负数场景把 FLOOR 当“取小”用容易与业务直觉相反,条件判断前先明确数轴方向

数据来源与参考

  • MySQL 8.0 Reference Manual · Mathematical Functions
  • PostgreSQL Documentation · Mathematical Functions
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌