Функция 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