MySql报告按位置和时段分组

时间:2012-06-18 21:12:08

标签: mysql group-by

我有一个mysql表,其中每个条目包含一个位置字符串和一个日期时间字段。

我想构建一个mysql查询,生成一个报告,其中包含按小时(在行上)和位置(在列上)分组的计数(项目)。

到目前为止,我手动生成按位置分组的报告,我有一个WHERE子句,我在那里迭代每天的每小时(数量为24)。这太麻烦了,我想自动完成。

修改

这是我现在根据fxzuz

的答案尝试使用的查询
SELECT locations.locationName, DATE_FORMAT(  '%Y-%m-%d %H', entries.CreatedOn ) , COUNT( pk_entry ) 
FROM entries
LEFT JOIN locations ON locations.computerName = entries.location
GROUP BY DATE_FORMAT(  '%Y-%m-%d %H', entries.CreatedOn ) 

1 个答案:

答案 0 :(得分:2)

mysql函数DATE_FORMAT是什么?

SELECT location, DATE_FORMAT(datetime, '%Y-%m-%d %H'), COUNT(id) FROM table GROUP BY DATE_FORMAT('%Y-%m-%d %H', datetime);