blob: fb28025e279bd00fec60d1816f529dc9821d1b92 [file] [log] [blame]
WITH season_discount AS (
SELECT
l.city,
l.state,
f.season,
AVG(f.discount_percentage) AS avg_discount
FROM fact_sales f
JOIN dim_locations l
ON f.location_id = l.location_id
GROUP BY
l.city,
l.state,
f.season
)
SELECT
city,
state,
season,
avg_discount,
discount_rank
FROM (
SELECT
city,
state,
season,
avg_discount,
DENSE_RANK() OVER (PARTITION BY season ORDER BY avg_discount DESC) AS discount_rank
FROM season_discount
) t
WHERE discount_rank <= 3
ORDER BY season, discount_rank;