MySQL:提取折线图的数据以显示一段时间内的计数

时间:2016-02-05 20:33:33

标签: mysql

我有一张桌子可以捕捉某些事件(比如外星人的攻击)。每次外星人攻击时,都会在此表中创建一条新记录(有些日子可能有多次攻击,有些日子没有)。

   attack_id         attack_date
   ---------         ---------
   1                 03/12/2015
   2                 03/12/2015
   3                 04/01/2015
   4                 04/21/2015
   5                 06/14/2015

我想以折线图显示每周发生多少次攻击。因此,x轴将是一年中的周数,y轴将是该周的攻击次数。

因此,为我的图表提供的结果集可能看起来像

Week            Number of attacks
----            -----------------

有人可以建议一个mysql查询吗?

1 个答案:

答案 0 :(得分:3)

你需要做的两件事:week()函数从日期算起一周,count()得到多少次攻击:

SELECT WEEK(alien_date) as attack_week, COUNT(*) as num_of_attacks 
 FROM yourTable
 GROUP BY WEEK(alien_date)