Функция width_bucket
Область применения: Databricks SQL Databricks Runtime
Возвращает номер контейнера для значения в гистограмме эквивалентной ширины.
Синтаксис
width_bucket(expr, minExpr, maxExpr, numBuckets)
Аргументы
expr
: числовое выражение или выражение интервала для вложения в контейнер.minExpr
: числовое выражение или выражение интервала, предоставляющее нижнюю границу для контейнеров.maxExpr
: числовое выражение или выражение интервала, предоставляющее верхнюю границу для контейнеров.numBuckets
: выражение INTEGER больше 0, определяющее количество контейнеров.
Если expr
является числовым выражением, minExpr
и maxExpr
также должны быть числовыми выражениями.
Если expr
является интервалом, minExpr
и maxExpr
должны иметь один и тот же тип интервала.
Интервал поддерживается начиная с Databricks Runtime 10.1.
Возвраты
Значение INTEGER.
Функция делит диапазон между minExpr
и maxExpr
на numBuckets
срезов одинакового размера.
Результатом является срез, в который попадает expr
.
Если параметр expr
находится за пределами minExpr
, возвращается значение 0.
Если параметр expr
находится за пределами maxExpr
, возвращается значение numbuckets + 1
Значение minExpr
может быть больше maxExpr
.
Примеры
> SELECT width_bucket(5.3, 0.2, 10.6, 5);
3
> SELECT width_bucket(-2.1, 1.3, 3.4, 3);
0
> SELECT width_bucket(8.1, 0.0, 5.7, 4);
5
> SELECT width_bucket(-0.9, 5.2, 0.5, 2);
3
> SELECT width_bucket(INTERVAL '1' DAY, INTERVAL '0' DAY, INTERVAL '10' DAY, 11);
2