Encuentra las fechas que faltan
La función generate_series()
puede ser útil para identificar las fechas que faltan.
Recuérdalo:
generate_series(from, to, interval)
donde from
y to
son fechas o marcas de tiempo, y interval
puede especificarse como una cadena con un número y una unidad de tiempo, como '1 month'
.
¿Hay algún día en los datos del Evanston 311 en el que no se haya creado ninguna solicitud?
Este ejercicio forma parte del curso
Análisis exploratorio de datos en SQL
Instrucciones de ejercicio
- Escribe una subconsulta utilizando
generate_series()
para obtener todas las fechas comprendidas entremin()
ymax()
date_created
enevanston311
. - Escribe otra subconsulta para seleccionar todos los valores de
date_created
como fechas deevanston311
. - Ambas subconsultas deben producir valores del tipo
date
(busca el::
). - Selecciona las fechas (
day
) de la primera subconsulta que sonNOT IN
los resultados de la segunda subconsulta. Esto te da días que no están endate_created
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
SELECT day
-- 1) Subquery to generate all dates
-- from min to max date_created
FROM (SELECT generate_series(___(___),
___(___),
___)::___ AS day
-- What table is date_created in?
FROM ___) AS all_dates
-- 4) Select dates (day from above) that are NOT IN the subquery
WHERE day ___
-- 2) Subquery to select all date_created values as dates
(SELECT ___::___
FROM evanston311);