0

对于我所做的分析,我们使用给定月份或一周内发生的事情。

例如:

SELECT date_format(registration_date, '%Y-%u') as 'cohort', count(id) as 'count' 
FROM account 
GROUP BY `cohort`

几个月来,变化的年份不会造成问题。虽然持续数周,但它会为 2013 年的最后一周和 2014 年的第一周创造一个脱节的一周。

是否有任何简单的方法可以基于滚动 7 天进行分组?

谢谢!

4

1 回答 1

1

这里的队列是“几周前”。这就是滚动 7 天分组的意思吗?

select
    cast(datediff(current_date(), registration_date) / 7 as unsigned) `cohort`, 
    count(id) `count`
from
    account 
group by
    `cohort`

Example Fiddle

于 2013-11-03T20:46:00.510 回答