Php 创建以小时为间隔的周表

Php 创建以小时为间隔的周表,php,mysql,group-by,html-table,Php,Mysql,Group By,Html Table,我有一个“orders”表,其中有一个timestamp字段,因此数据如下所示: id | createdate | customerid 1 | 2013-10-03 09:35:20 | 5 2 | 2013-10-03 09:35:20 | 9 3 | 2013-10-04 15:00:20 | 5 4 | 2013-10-05 12:15:20 | 5 Hours | Monday | Tuesday | Wednesday

我有一个“orders”表,其中有一个timestamp字段,因此数据如下所示:

id | createdate          | customerid 
1  | 2013-10-03 09:35:20 |   5
2  | 2013-10-03 09:35:20 |   9
3  | 2013-10-04 15:00:20 |   5
4  | 2013-10-05 12:15:20 |   5
Hours      |  Monday  | Tuesday  | Wednesday  |  Thursday  |  Friday  | Saturday
9:30 - 10  |    0     |    0     |     0      |     2      |    0     |    0
10-11      |    0     |    0     |     0      |     0      |    0     |    0
11-12      |    0     |    0     |     0      |     0      |    1     |    0  
因此,从这个表中,我需要创建一个html表,上面显示Mon Saturday,侧面显示小时,如下所示:

id | createdate          | customerid 
1  | 2013-10-03 09:35:20 |   5
2  | 2013-10-03 09:35:20 |   9
3  | 2013-10-04 15:00:20 |   5
4  | 2013-10-05 12:15:20 |   5
Hours      |  Monday  | Tuesday  | Wednesday  |  Thursday  |  Friday  | Saturday
9:30 - 10  |    0     |    0     |     0      |     2      |    0     |    0
10-11      |    0     |    0     |     0      |     0      |    0     |    0
11-12      |    0     |    0     |     0      |     0      |    1     |    0  
现在我得到的是:

SELECT DATE_FORMAT( createdate,  '%m/%d/%Y' ) AS createdate
, DATE_FORMAT( createdate,  '%H' ) AS createhour, COUNT( * ) AS totals
FROM  orders
WHERE createdate >= CURDATE( ) - INTERVAL DAYOFWEEK( CURDATE( ) ) +6
DAY AND createdate < CURDATE( ) - INTERVAL DAYOFWEEK( CURDATE( ) ) -1
DAY GROUP BY DATE_FORMAT( createdate,  '%m/%d/%Y' ) , DATE_FORMAT( createdate,  '%H' )
选择日期\u格式(createdate,“%m/%d/%Y”)作为createdate
,日期\格式(createdate,“%H”)为createhour,计数(*)为总计
从命令
其中createdate>=CURDATE()-间隔DAYOFWEEK(CURDATE())+6
DAY和createdate

这会返回数据,但不是我需要的格式,有没有办法在mysql中实现?或者它涉及到php中使用数组的一些工作吗?

这可能会有所帮助,而且可以使用
while
循环来完成。看看这个问答,我会选择混合解决方案。在SQL中按日期分隔,在PHP中按小时分组。还要注意的是,Hours列不是固定的时间间隔,这会使纯SQL变得效率低下且难以读取solution@Fred-ii-谢谢,但那没有帮助,我知道如何将mysql中的值转换成php,这对我来说不是问题,但再次感谢。@MostyMostacho这就是我所想的混合解决方案,但仍然不太确定我需要什么数据以及如何在php中通过数组将其分离?@Andres不客气。我的印象是,您希望它按照您的草图在HTML表中格式化。