我目前有一个给定表格的前 X 个结果列表,对于给定的一天,其中“顶部”定义为具有最高聚合计数的结果。我希望能够看到的不仅仅是特定日期的计数,还有它与昨天计数的比较,以及上周计数的平均值。
这是我当前的查询:
SELECT foo, bar, SUM(count) as today
FROM tablename
WHERE col1 = 'asdf' and date = '2012-08-23'
GROUP BY foo, bar
ORDER BY count desc
LIMIT 5
结果看起来像:
|foo | bar | today |
|something1 | something3 | 2345 |
|something2 | something4 | 1234 |
....
但我想要的是这样的:
|foo | bar | today | yesterday | week_avg |
|something1 | something3 | 2345 | 2273 | 2193 |
|something2 | something4 | 1234 | 935 | 1001 |
....
作为奖励积分,我不介意在某种 GROUP_CONCAT 结果中包含过去 20 天的所有日期(所以我可以轻松地用它制作迷你图)