Share via


ceiling 函式

適用於:檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime 11.3 LTS 和更新版本

傳回小於 expr 四捨五入至 targetScale 小數點的最小數位。 此函式是 ceil 函式的同義字。

語法

ceiling(expr [, targetScale])

引數

  • expr:評估為數值的表達式。
  • targetScale:選擇性 INTEGER 常值大於 -38 指定小數點後要四捨五入的數位數目。

傳回

targetScale如果沒有,則為 :

  • 如果 exprDECIMAL(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 ceiling(-0.1);
 0

> SELECT ceiling(5);
 5

> SELECT ceiling(5.4);
 6

> SELECT ceiling(3345.1, -2);
 3400

> SELECT ceiling(-12.345, 1);
 -12.3