mysql如何分别按照7天,一个季度 来group by 这个时间阶段的count
时间字段存的是regdate
参考百度统计
以下是七天一个跨度
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
季度就用月份运算一个新的值,然后group by 这个字段
(month-1)/4+1
1 2 3 4 ---> 1
5 6 7 8 ---> 2
然后,7天就用星期值,
mysql 有函数取某个日期 regdate 的月份或者星期数。
比如mongodb 就有这样的
db.sales.aggregate(
[
{
$project:
{
year: { $year: "$date" },
month: { $month: "$date" },
day: { $dayOfMonth: "$date" },
hour: { $hour: "$date" },
minutes: { $minute: "$date" },
seconds: { $second: "$date" },
milliseconds: { $millisecond: "$date" },
dayOfYear: { $dayOfYear: "$date" },
dayOfWeek: { $dayOfWeek: "$date" },
week: { $week: "$date" }
}
}
]
)