Difícil parcial-2

Consultas SQL: Subconsultas y EXISTS con Sakila

Fuente: Consultas SQL.docx

sqlsubconsultasexistsanidadassakila

Base de datos: Sakila

Consultas

  1. Clientes que han pagado al menos una vez: Liste customer_id, first_name, last_name de los clientes para los que exista al menos un registro en payment (filtro con EXISTS).

  2. Películas alquiladas al menos una vez: Liste film_id y title de las películas para las que exista al menos un alquiler, conectando film -> inventory -> rental (EXISTS con subconsulta).

  3. Clientes por encima del promedio de pago total: Muestre customer_id, first_name, last_name y total_paid de clientes cuyo total pagado sea mayor que el promedio del total pagado entre todos los clientes (subconsultas anidadas + agregación).

  4. Actores con más películas que el promedio: Liste actor_id, first_name, last_name y total_films de actores cuya cantidad de películas sea mayor que el promedio de películas por actor (agregación + HAVING comparado con subconsulta).

  5. Películas nunca alquiladas: Liste film_id y title de películas que no tengan ningún alquiler asociado, uniendo con inventory y rental y filtrando las sin coincidencia (LEFT JOIN + rental_id IS NULL).

  6. Tiendas con ingresos altos y con inventario: Muestre store_id y total_income (suma de pagos) de tiendas con ingresos mayores a 30,000 y que además tengan inventario registrado (SUM + HAVING + EXISTS).

  7. Películas con más alquileres que el promedio: Muestre film_id, title y total_rentals de películas cuyo número de alquileres sea mayor que el promedio de alquileres por película (agregación + HAVING contra subconsulta), forzando el uso de RIGHT JOIN en la unión con rental.