Функция ceil
Область применения: Databricks SQL Databricks Runtime 11.3 LTS и выше
Возвращает наименьшее число не меньше expr
с округлением до targetScale
цифр после запятой. Эта функция является синонимом функции ceiling.
Синтаксис
ceil(expr [, targetScale])
Аргументы
expr
: выражение, значением которого является число.targetScale
: необязательный литерал INTEGER больше-38
, указывающий количество цифр после запятой для округления.
Возвраты
Если targetScale
не указан:
- Если параметр
expr
имеет значениеDECIMAL(p, s)
, возвращаетсяDECIMAL(p - s + 1, 0)
. - Во всех остальных случаях возвращается значение типа BIGINT.
Если указан targetScale
, а expr
имеет следующее значение:
TINYINT
Возвращает
DECIMAL(p, 0)
сp = max(3, -targetScale + 1)
.SMALLINT
Возвращает
DECIMAL(p, 0)
сp = max(5, -targetScale + 1)
.INTEGER
Возвращает
DECIMAL(p, 0)
сp = max(10, -targetScale + 1))
.BIGINT
Возвращает
DECIMAL(p, 0)
сp = max(20, -targetScale + 1))
.FLOAT
Возвращает
DECIMAL(p, s)
сp = max(14, -targetScale + 1))
иs = min(7, max(0, targetScale))
.DOUBLE
Возвращает
DECIMAL(p, s)
сp = max(30, -targetScale + 1))
иs = min(15, max(0, targetScale))
.DECIMAL(p_in, s_in)
Возвращает
DECIMAL(p, s)
сp = max(p_in - s_in + 1, -targetScale + 1))
иs = min(s_in, max(0, targetScale))
.
Если targetScale
принимает отрицательное значение, происходит округление до -targetScale
порядка.
Значение targetScale
по умолчанию равно 0, что округляется до следующего целого числа по возрастанию.
Примеры
> SELECT ceil(-0.1);
0
> SELECT ceil(5);
5
> SELECT ceil(5.4);
6
> SELECT ceil(3345.1, -2);
3400
> SELECT ceil(-12.345, 1);
-12.3