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

Consulta MySql:incluye días que tienen COUNT(id) ==0 pero solo en los últimos 30 días

Necesitas una tabla de fechas, luego únete a la izquierda a la tabla de compilaciones.

Algo como esto:

SELECT 
    COUNT(id) AS 'Past-Month-Builds', 
    CONCAT(MONTH(DateTable.Date), '-', DAY(DateTable.Date)) as 'Month-Day' 
FROM DateTable
    LEFT JOIN builds ON DATE(builds.submittime) = DateTable.Date
WHERE DateTable.Date >= DATE_SUB(CURDATE(), INTERVAL 30 day) 
GROUP BY MONTH(submittime), DAY(submittime);