日期字段是‘YYYY-mm-dd H:M:S’格式,现有需求是按照'YYYY-mm-dd',或者‘YYYY-mm’这样的格式group,尝试过在_id里用''old_date'.substr(x, y)'无效,也试了project用'old_date'.substr(x, y)转换成new_date的方法也无效,
至于开发文档样例,说实话看的一头雾水
await db.collection('list')
.aggregate()
.match({
name: event.name,
old_date: db.RegExp({
regexp: event.param,
option: 'i',
})
})
.project({
new_date: '$old_date'.substr(0,10),//此处substring也试过
sum_value: 1,
})
.group({
_id: {
new_date:'$new_date',//此处用old_date: '$old_date'.substr(0,10)无效
},
total_value: $.sum('$sum_value'),
})
.end()
addfield 时间做为一个字段
然后用 date 做为 group _id 中的一个参数
db.collection('####').aggregate()
.addFields({
tempDate:$.dateToString({
date: '$startTime',
format:'%Y-%m-%d'
}),
})
.group({
_id: {
tempDate: '$tempDate',
},
})
.end()
如果实在无解,只能是添加几个用来group的字段了,但是这样感觉也太sb了吧...