capypad
0 Tage Serie
sql / expert
Snippet

Erweiterte Window-Frame-Spezifikationen für gleitende Durchschnitte

Window-Frames verfeinern Fensterfunktionen, indem sie eine spezifische Teilmenge von Zeilen relativ zur aktuellen Zeile definieren. Die Verwendung von 'ROWS BETWEEN' ermöglicht die Berechnung von gleitenden Durchschnitten oder laufenden Summen über ein gleitendes Fenster (z. B. die letzten 3 Verkaufstage), was eine tiefere zeitliche Analyse als einfache Aggregationen ermöglicht.

snippet.sql
sql
1
2
3
4
5
6
7
8
SELECT
sale_date,
amount,
AVG(amount) OVER (
ORDER BY sale_date
ROWS BETWEEN 2 PRECEDING AND CURRENT ROW
) AS moving_avg
FROM sales;
Erklärung
1
AVG(amount) OVER (
Wendet das Durchschnitts-Aggregat als Fensterfunktion an.
2
ORDER BY sale_date
Definiert die logische Reihenfolge für die Fensterberechnung.
3
ROWS BETWEEN 2 PRECEDING AND CURRENT ROW
Definiert den Rahmen: umfasst die zwei vorherigen Zeilen und die aktuelle (ein gleitendes 3-Zeilen-Fenster).