Share via


bround 函式

適用於:檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime

使用HALF_EVEN四捨五入模式傳回四捨五入expr

語法

bround(expr [,targetScale] )

引數

  • expr:數值表達式。

  • targetScale:INTEGER 常數表達式。 如果 targetScale 省略預設值為 0 (整數)。

    在 Databricks SQL 和 Databricks Runtime 12.2 LTS 和更新版本中:如果 targetscale 是負四捨五入,則會對 的正數執行 10

傳回

如果 expr DECIMAL,則結果為 DECIMAL,其小數位數為較小的 expr 小數位數和 max(targetScale, 0)。 針對所有其他數值類型,結果類型會比對 expr

HALF_EVEN 四捨五入中,也稱為 高斯銀行家的 四捨五入,數位 5 會四捨五入為偶數。

若要 HALF_UP 四捨五入,請使用 round 函式

警告

在 Databricks Runtime 12.2 LTS 和以下版本中,如果spark.sql.ansi.enabledfalse為 ,則溢位不會造成錯誤,而是會「包裝」結果。

範例

> SELECT bround(2.5, 0), round(2.5, 0);
 2    3

> SELECT bround(3.5, 0), round(3.5, 0);
 4    4

> SELECT bround(2.6, 0), round(2.6, 0);
 3    3

> SELECT bround(2.25, 1), round(2.25, 1);;
 2.2  2.3

> SELECT bround(13.5, -1), round(13.5, -1);
 10   10