$today = mktime(0,0,0);
$yesterday = $today - 86400;
$this->view->numberyesterday=$db->fetchAll("SELECT * FROM `transactions` WHERE `siteid`=".$sid." AND `timestamp` > ".$db->quote($yesterday,'integer')." AND timestamp < ".$db->quote($today,'integer'));
我使用上面的代码显示昨天的所有记录。现在我需要绘制每小时的图表。如何从上述查询中检索每小时的记录?(例如,记录在12-1 AM,1-2 AM .... 23-24PM等)
谢谢!
修改
我希望我可以在每个变量中存储每小时的记录。因此24小时内将有24个变量。因此绘制图表很容易。
答案 0 :(得分:5)
您没有指定输出的外观,但似乎此构造可以帮助您:
select Hour(timestamp) transhour, count(*) transcount
from transactions
where yourfilters = yourvalues
Group by Hour(timestamp)
输出将如下所示:
transhour | transcount
======================
0 | 2
1 | 23
2 | 45
3 | 23
... | ...
22 | 34
23 | 3
警告:如果在给定的小时内没有执行任何交易,则此时的输出将忽略(并且不会将其带回计数为零)