sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo generar datos en MySQL?

SQL es notoriamente malo para devolver datos que no están en la base de datos. Puede encontrar los valores iniciales y finales de brechas de fechas, pero obtener todas las fechas es difícil.

La solución es crear una tabla de calendario con un registro para cada fecha y EXTERIOR ÚNETE a tu consulta.

Aquí hay un ejemplo asumiendo que created_at es del tipo FECHA:

SELECT calendar_date, COUNT(`id`)
FROM calendar LEFT OUTER JOIN my_table ON calendar.calendar_date = my_table.created_at
GROUP BY calendar_date

(Supongo que created_at es realmente DATETIME, por lo que tendrás que hacer un poco más de gimnasia para UNIRTE a las mesas).