场景
- mongo aggregate 先通过
m
a
t
c
h
过
滤
掉
一
部
分
,
然
后
将
筛
选
出
来
的
传
递
给
match过滤掉一部分, 然后将筛选出来的传递给
match过滤掉一部分,然后将筛选出来的传递给group, 这是正常的流程;
但是没有想到执行是按照传递的参数的顺寻,而不是索引($match $group)
代码
- 下面可以正确得到需要数值写法 ($match在前)
db.getCollection('bill_day').aggregate([
{
$match:{month: {$lte:"209105", $gte:'201905'}}
},
{
$group: {
_id: "$date",
section_number_sum: {$sum : "$section_invoked_number"},
money_sum: {$sum: "$money"}
}
}
])
- 下面得不到正确数值的写法($group 在前)
db.getCollection('bill_day').aggregate([
{
$group: {
_id: "$date",
section_number_sum: {$sum : "$section_invoked_number"},
money_sum: {$sum: "$money"}
}
},
{
$match:{month: {$lte:"209105", $gte:'201905'}}
},
])