Mysql:按周显示数据

时间:2015-10-22 07:21:59

标签: mysql

我使用了这个查询

   SELECT DATE( created_date ) AS date, FLOOR( time_to_sec( timediff( MAX( created_date ) , MIN( created_date ) ) ) /3600 ) AS Hours
    FROM bir_jobs_tracker
    GROUP BY date
    LIMIT 0 , 30

,结果是

 date   Hours
2015-08-25  0
2015-08-26  5
2015-08-27  0
2015-08-28  5
2015-09-01  2
2015-09-02  4
2015-09-15  0
2015-09-17  0

它返回每日基数的小时计算,如何编辑我的查询,以便我可以每周显示它们并在每周增加7天的小时

需要输出

 date   Hours
2015-08-22  10
2015-09-01  6

1 个答案:

答案 0 :(得分:1)

尝试使用week(),它将返回日期的周数,因此您可以轻松地将周数组合在一起。请注意在您的分组中包含一年,或者最终可以合并几周不同年份。

SELECT WEEK(DATE( created_date ) AS date ...

编辑: 因为你需要先每天计算它,首先开始运行你的查询,然后是结果:

SELECT WEEK(date) as week, YEAR(date) as year, SUM(hours) as hours_weekly
FROM (your_result)
GROUP BY year, week

我没有mysql来检查语法,但你应该明白这一点。