我的mongo数据如下。
{
"date" : Jan,
"rank" : 1,
"StudentId: 10
},
{
"date" : Jan,
"rank" : 1,
"StudentId: 20
},
{
"date" : Jan,
"rank" : 2,
"StudentId: 30
},
{
"date" : Feb,
"rank" : 1,
"StudentId: 10
},
{
"date" : Feb,
"rank" : 2,
"StudentId: 20
},
{
"date" : Feb,
"rank" : 3,
"StudentId: 30
}
我希望得到理想的结果,因为从1月到2月,从1月到2月的移动排名从1月到2月。 即。从上面的json我想要下面的结果
{
"date" : Feb,
"rank" : 2,
"StudentId: 20
}
ie ..从日期是Jan,到日期是2月,从日期等级是1到日期等级是2。
如何使用mongo db query ???
实现此目的答案 0 :(得分:0)
您可以使用范围和cond聚合运算符来实现此目的:
db.ranks.aggregate(
[
{
$project:
{
item: 1,
date:
{
$cond: [ your condition here]
},
rank: {$range:[0, 1]}
}
}
]
)
应该有用!