Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL:preenchendo campos vazios com zeros ao usar GROUP BY


Crie outra tabela com uma única coluna,
CREATE TABLE hours_list (
    hour int NOT NULL PRIMARY KEY
)

Preencha-o com todas as 24 horas.

Em seguida, faça uma junção nessa tabela para preencher os zeros.
SELECT
    hs.hour as HOUR, COUNT(ws.ID) AS HOUR_STAT
FROM hours_list hs 
LEFT JOIN cms_webstat ws ON hs.hour = hour(ws.TIMESTAMP_X)
GROUP BY hs.hour
ORDER BY hs.hour DESC