我有一个带有datetime字段和计数的集合:
{
_id: null,
datetime: new Date(),
count: 1234
}
Run Code Online (Sandbox Code Playgroud)
我想以24小时,7天和30天的间隔获得计数总和.结果必须如下:
{"sum": 100, "interval": "day"},
{"sum": 700, "interval": "week"},
{"sum": 3000, "interval": "month"}
Run Code Online (Sandbox Code Playgroud)
编辑:
更抽象:我需要多个条件的组结果(在这种情况下 - 多个时间间隔)
MySQL示例:
SELECT
IF (time>CURRENT_TIMESTAMP() - INTERVAL 24 HOUR, 1, 0) last_day,
IF (time>CURRENT_TIMESTAMP() - INTERVAL 168 HOUR, 1, 0) last_week,
IF (time>CURRENT_TIMESTAMP() - INTERVAL 720 HOUR, 1, 0) last_month,
SUM(count) count
FROM table
GROUP BY last_day,
last_week,
last_month
Run Code Online (Sandbox Code Playgroud)