数据库保存char* LogFileName
的记录,每个项目都存储已在此项目上工作的小时数。
我想创建一些简单的统计数据,显示有多少X小时项目存在:
Projects
当然,这可以通过简单的Projecs
id | name | hours | ...
----+--------+--------+--------
1 | P1 | 5 | ...
----+--------+--------+--------
2 | P2 | 20 | ...
----+--------+--------+--------
3 | P3 | 9 | ...
----+--------+--------+--------
4 | P4 | 28 | ...
----+--------+--------+--------
5 | P5 | 42 | ...
----+--------+--------+--------
6 | P6 | 8 | ...
0-10 hours ==> 3
11-20 hours ==> 0
21-30 hours ==> 1
31-40 hours ==> 0
41-50 hours ==> 1
语句轻松完成,该语句返回所有行和SELECT
循环,这些循环遍历所有结果并将它们拆分为所需的时间间隔/组。
问题是:这可以仅在MySQL中完成吗?
答案 0 :(得分:1)
要按10小时的间隔进行分组,您可以使用...
SELECT count(id) from Projects group by truncate(hours/10,0)
将10更改为您需要的时间间隔。