Die Fensterfunktion Width_Bucket()
teilt die Zeilen in N Gruppen sodass jede Gruppe einen gleichgroßen Wertebereich zwischen einem angegebenen Minimum und Maximum hat.
-- (input, min, max, n)
SELECT width_bucket( x, 0, 100, 10)
FROM …
Liefert für jede Zeile eine ganze Zahl zwischen 0 und 11. Der Wert 0 wird geliefert, wenn der Eingabewert x
unterhalb des Minimum (0) liegt. Analog wird 11 geliefert, wenn x
über dem Maximum (100) liegt. Liegt x
zwischen 0 und 100 wird geliefert in das wie-vielte Ntel der Wert fällt.
Ähnliche Funktionen: ntile()
Die Fensterfunktion Width_Bucket()
ist als Teil der optionalen Funktion T612, „Advanced OLAP operations“ in ISO/IEC 9075-2:2023 definiert.
20 Jahre SQL-Evolution kann man nicht an einem Tag nachholen. Abonniere den Newsletter via E-Mail, Bluesky oder RSS, um sukzessive aufzuholen und modern-sql.com am Radar zu behalten.
Markus verwandelt veraltetes SQL-92-Wissen in solides und zeitgemäßes SQL-Know-how