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
使用
p = max(3, -targetScale + 1)
傳DECIMAL(p, 0)
回 。SMALLINT
使用
p = max(5, -targetScale + 1)
傳DECIMAL(p, 0)
回 。INTEGER
使用
p = max(10, -targetScale + 1))
傳DECIMAL(p, 0)
回 。BIGINT
使用
p = max(20, -targetScale + 1))
傳DECIMAL(p, 0)
回 。FLOAT
使用
p = max(14, -targetScale + 1))
和傳DECIMAL(p, s)
回s = min(7, max(0, targetScale))
DOUBLE
使用
p = max(30, -targetScale + 1))
和傳DECIMAL(p, s)
回s = min(15, max(0, targetScale))
DECIMAL(p_in, s_in)
使用
p = max(p_in - s_in + 1, -targetScale + 1))
和傳DECIMAL(p, s)
回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