ComenzarEmpieza gratis

Aritmética INTERVAL

Si dirigieras una tienda de alquiler de DVD real, en ocasiones tendrías que determinar los títulos alquilables. En el ejercicio anterior, vimos que algunos de los registros de los resultados tenían un valor NULL para return_date. Esto se debe a que el alquiler seguía pendiente.

Cada alquiler de la tabla film tiene una columna rental_duration asociada que representa el número de días que un cliente puede alquilar un DVD antes de que se considere retrasado. En este ejemplo, excluirás películas con un valor NULL para return_date y también convertirás rental_duration en un tipo INTERVAL. Aquí tienes un recordatorio de un método para realizar esta conversión.

SELECT INTERVAL '1' day * timestamp '2019-04-10 12:34:56'

Este ejercicio forma parte del curso

Funciones para manipular datos en PostgreSQL

Ver curso

Instrucciones de ejercicio

  • Convierte rental_duration multiplicándolo por INTERVAL de 1 día.
  • Resta rental_date a return_date para calcular el número de days_rented.
  • Excluye los alquileres con valor NULL para return_date.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

SELECT
	f.title,
 	-- Convert the rental_duration to an interval
    ___ '1' ___ * ___.___,
 	-- Calculate the days rented as we did previously
    r.return_date - ___.___ AS days_rented
FROM film AS f
    INNER JOIN inventory AS i ON f.film_id = i.film_id
    INNER JOIN rental AS r ON i.inventory_id = r.inventory_id
-- Filter the query to exclude outstanding rentals
WHERE r.return_date ___ ___ ___
ORDER BY f.title;
Editar y ejecutar código