CEIL
更新时间:2025-10-17
描述
对浮点及定点小数按特定位数向上取整,返回取整过后的浮点或定点数。
语法
SQL
1CEIL(<a>[, <d>])
参数
| 参数 | 说明 |
|---|---|
<a> |
浮点 (Double) 或定点 (Decimal) 参数,表示要进行取整的参数 |
<d> |
可选的,整数,表示舍入目标位数,正数为向小数点后舍入,负数为向小数点前舍入,0 表示舍入到整数。不填写时等同于 <d> = 0 |
返回值
按照下面规则返回最小的大于或者等于 <a> 的舍入数字:
舍入到 1/(10^d) 位,即,使结果可整除1/(10^d)。如果 1/(10^d) 不精确,则舍入位数为相应数据类型的最接近的数字。
对于 Decimal 类型的入参 <a>,假设其类型为 Decimal(p, s),则返回值类型为:
Decimal(p, 0),若<d> <= 0Decimal(p, <d>),若0 < <d> <= sDecimal(p, s),若<d> > s
别名
- DCEIL
- CEILING
举例
SQL
1select ceil(123.456);
Text
1+---------------+
2| ceil(123.456) |
3+---------------+
4| 124 |
5+---------------+
SQL
1select ceil(123.456, 2);
Text
1+------------------+
2| ceil(123.456, 2) |
3+------------------+
4| 123.46 |
5+------------------+
SQL
1select ceil(123.456, -2);
Text
1+-------------------+
2| ceil(123.456, -2) |
3+-------------------+
4| 200 |
5+-------------------+
SQL
1select ceil(123.45, 1), ceil(123.45), ceil(123.45, 0), ceil(123.45, -1);
Text
1+-----------------+--------------+-----------------+------------------+
2| ceil(123.45, 1) | ceil(123.45) | ceil(123.45, 0) | ceil(123.45, -1) |
3+-----------------+--------------+-----------------+------------------+
4| 123.5 | 124 | 124 | 130 |
5+-----------------+--------------+-----------------+------------------+
SQL
1select ceil(x, 2) from ( select cast(123.456 as decimal(6,3)) as x from numbers("number"="5") )t;
Text
1+------------+
2| ceil(x, 2) |
3+------------+
4| 123.46 |
5| 123.46 |
6| 123.46 |
7| 123.46 |
8| 123.46 |
9+------------+
