SELECT
film_rank,
film_title
FROM (
SELECT
DENSE_RANK() OVER (ORDER BY COUNT(r.rental_id) DESC) AS film_rank,
f.title AS film_title
FROM film f
JOIN inventory i ON f.film_id = i.film_id
JOIN rental r ON i.inventory_id = r.inventory_id
WHERE r.rental_date >= '2005-01-01'
AND r.rental_date < '2006-01-01'
GROUP BY f.film_id, f.title
) ranked
WHERE film_rank <= 3
ORDER BY film_rank, film
;
show status like 'Last_query_cost';