因为mongodb是按照utc时间存储 比中国的时区要少8个小时 如果直接变成字符串聚合是不正确的
db.getCollection("xxxxx").aggregate([
{
$match: {
created_at: {$gte: ISODate('2021-01-01'),$lte: ISODate("2021-03-12")}
}
},{
$project: {
created_at: 1,
created_day: {
$dateToString: {
format: "%Y-%m-%d",
date: {
"$add": [ "$created_day", 28800000]
}
}
}
}
},{
$group: {
_id: "$created_day",
count: {$sum: 1}
}
},{
}
])