Si quisiéramos usar WHERE para especificar que solo queremos los lugares menores o iguales a 10, deberÃamos convertir la consulta como una subconsulta, de esta forma podremos usar lugar dentro del WHERE.
De esta forma:
SELECT *
FROM (
SELECT
peliculas.pelicula_id AS id,
peliculas.titulo,
COUNT(*) AS numero_rentas,
DENSE_RANK() OVER(
ORDER BY COUNT(*) DESC
) AS lugar
FROM rentas
INNER JOIN inventarios ON rentas.inventario_id = inventarios.inventario_id
INNER JOIN peliculas ON inventarios.pelicula_id = peliculas.pelicula_id
GROUP BY peliculas.pelicula_id
ORDER BY numero_rentas DESC
) AS top_10
WHERE lugar <= 10;
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?