WITH zader AS (
SELECT COUNT(i.inventory_id) as delayed_count
FROM rental r
JOIN inventory i ON r.inventory_id = i.inventory_id
JOIN film f ON f.film_id = i.film_id
WHERE DATEDIFF(return_date, rental_date) > rental_duration
)
SELECT
i.store_id,
(COUNT(i.inventory_id) / (SELECT delayed_count FROM zader)) * 100 AS delayed_percent
FROM rental r
JOIN inventory i ON r.inventory_id = i.inventory_id
JOIN film f ON i.film_id = f.film_id
WHERE
DATEDIFF(return_date, rental_date) > rental_duration
GROUP BY i.store_id;
;
show status like 'Last_query_cost';