【发布时间】:2015-10-16 17:00:08
【问题描述】:
如果我有一个包含用户信息的表,其中包含名为“已添加”的注册日期(即 2015-01-01)的日期时间列,我如何显示每个以下期间注册/活动的所有记录的计数:
1) 不到一年 2) 1 到 2 年 3) 2 至 3 年 4) ... 以此类推,只要“添加”的年份过去了。
我试过这个:
SELECT Count(*) AS count, YEAR(CURDATE()) - YEAR(added) AS years
FROM users
GROUP BY YEAR(added)
但该计算已关闭,因为它只是按年份对结果进行分组,而不是按从今天开始的实际日期。例如,在 2014 年 12 月注册的人在 2015 年 1 月仍会显示为计数“1”...尽管实际上应该考虑实际注册日期,而不仅仅是年份。
建议?
【问题讨论】: