为什么可以';我不能用$match与MongoDB合计吗?
我的代码是:为什么可以';我不能用$match与MongoDB合计吗?,mongodb,aggregation-framework,Mongodb,Aggregation Framework,我的代码是: db.essays.aggregate({ $match: { essayId: 3 }, $group: { _id: { year: { $year: '$essayTime' }, month: { $month: '$essayTime' }, day: { $dayOfMonth: '$essayTime' } },
db.essays.aggregate({
$match: {
essayId: 3
},
$group: {
_id: {
year: {
$year: '$essayTime'
},
month: {
$month: '$essayTime'
},
day: {
$dayOfMonth: '$essayTime'
}
},
count: {
$sum: 1
}
}
});
它返回一个错误:“异常:管道阶段规范对象必须只包含一个字段。”
但是,如果我没有使用
$match
,那么它会按预期返回。我做错了什么?将每个管道阶段放入数组中自己的对象中:
db.attractions.aggregate([
{$match:{
essayId:3
}},
{$group:{
_身份证:{
年份:{
$year:“$essayTime”
},
月份:{
$month:“$essayTime”
},
日期:{
$dayOfMonth:“$essayTime”
}
},
计数:{
$sum:1
}
}}
]);