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


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