Skip to main content
SQL • LESSON 158

Moving Average

How can we compute a 7-day moving average of daily order revenue?

Advanced3 Minutes1710 XP
🤔 THE QUESTION

How can we compute a 7-day moving average of daily order revenue?

💡 WHAT IS IT?

ROWS BETWEEN 6 PRECEDING AND CURRENT ROW calculates a rolling 7-row moving window average.

🎯 WHAT IS IT USED FOR?

Smoothing daily revenue volatility, 7-day moving averages in financial charts, trend lines.

💻 EXAMPLE
SELECT
order_date,
amount,
AVG(amount) OVER (
    ORDER BY order_date
    ROWS BETWEEN 6 PRECEDING AND CURRENT ROW
) AS seven_day_average
FROM orders;

🎯 Mission Objectives

Practice typing production-grade SQL code for Moving Average.

  • 7-day moving average
  • Sliding window frame
  • 6 PRECEDING AND CURRENT ROW
  • Time-series smoothing