零或零填充空白時間我寫了按小時計算的記錄小時查詢:分組記錄按小時或按天白天和mysql的
select TO_CHAR(copied_timestamp, 'YYYY-MM-DD HH24'),count(*) from req group by
TO_CHAR(copied_timestamp, 'YYYY-MM-DD HH24');
結果是:
2012-02-22 13 2280
2012-02-22 15 1250
2012-02-22 16 1245
2012-02-22 19 1258
但我需要這樣一個結果:
2012-02-22 13 2280
2012-02-22 14 0
2012-02-22 15 1250
2012-02-22 16 1245
2012-02-22 17 0
2012-02-22 18 0
2012-02-22 19 1258
我也有這些查詢該組的日和月呢!
select TO_CHAR(copied_timestamp, 'YYYY-MM-DD'),count(*) from req
group by TO_CHAR(copied_timestamp, 'YYYY-MM-DD');
select TO_CHAR(copied_timestamp, 'YYYY-MM'),count(*) from req
group by TO_CHAR(copied_timestamp, 'YYYY-MM');
我需要他們的空白填充零或null。 任何幫助真的很感激。
注意: 在oracle中使用CONNECT BY
有一個答案,但我需要在Mysql中的答案,因爲Mysql不支持CONNECT BY
。 Here is the link
是否有表'24'記錄每天,代表當天的每個小時? –
實際上,它可以有更多的記錄。每秒可能有5個或更多記錄! – Heidarzadeh
引用問題中'CONNECT BY'和'LEVEL'的唯一目的是生成行。它是Oracle中的一個習慣用語,它應該在Mysql中有相同的功能,它可以做同樣的事情。也許這將有助於:http://stackoverflow.com/questions/1806484/generate-many-rows-with-mysql –