width_bucket
-Funktion
Gilt für: Databricks SQL Databricks Runtime
Gibt die Bucketnummer für einen Wert in einem Histogramm mit gleicher Breite zurück.
Syntax
width_bucket(expr, minExpr, maxExpr, numBuckets)
Argumente
expr
: Ein numerischer oder Intervallausdruck, für den ein Bucket verwendet werden soll.minExpr
: Ein numerischer oder Intervallausdruck, der eine Untergrenze für die Buckets angibt.maxExpr
: Ein numerischer oder Intervallausdruck, der eine Obergrenze für die Buckets angibt.numBuckets
: Ein INTEGER-Ausdruck, der größer als 0 ist und die Anzahl der Buckets angibt.
Falls expr
numerisch ist, müssen minExpr
und maxExpr
ebenso numerisch sein.
Falls expr
ein Intervall ist, müssen minExpr
und maxExpr
denselben Intervalltyp aufweisen.
Intervall wird abDatabricks Runtime 10.1 unterstützt
Gibt zurück
Ein INTEGER-Wert
Die Funktion teilt den Bereich zwischen minExpr
und maxExpr
in numBuckets
Slices gleicher Größe auf.
Das Ergebnis ist der Slice, in den expr
fällt.
Wenn expr
außerhalb von minExpr
liegt, ist das Ergebnis 0.
Wenn expr
außerhalb von maxExpr
liegt, ist das Ergebnis numbuckets + 1
.
minExpr
kann größer als maxExpr
sein.
Beispiele
> 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