Поделиться через


Функция bround

Область применения: флажок Databricks SQL флажок Databricks Runtime

Возвращает значение expr, округленное с использованием режима округления HALF_EVEN.

Синтаксис

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 округления используется круглая функция.

Предупреждение

В Databricks Runtime 12.2 LTS и ниже, а также в среде выполнения Databricks, если 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