Your question is 7-Day Rolling Average Excluding Weekends. Start with the requirements and the one table on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
We have a table of daily sales data. Write a query to calculate the 7-day rolling average revenue for each product, but exclude weekends from the calculation and handle gaps in the data.
Use a seven-calendar-day window ending on each recorded sale date. Missing dates must not be treated as zero, and multiple records for the same product and date should contribute to that day's revenue.
product_id, product_name, sale_date, daily_revenue, and rolling_7_day_avgproduct_id, then sale_date| Column | Type | Description |
|---|---|---|
| sale_idPK | INT | Unique sales record identifier |
| product_id | INT | Product identifier |
| product_name | VARCHAR(100) | Product name |
| sale_date | DATE | Date on which the revenue was recorded |
| revenue | NUMERIC(12,2) | Revenue recorded for the product on the sale date |