蒙哥合集:
item1
{
param1: 1;
param2: [{ status=1 }, { status=2 }, { status=4 }]
}
item2
{
param1: 2;
param2: [{ status=4 }, { status=2 }, { status=1 }]
}
我想获取 param2 项中的最后一个状态,该值为 1。如何生成查询?
蒙哥合集:
item1
{
param1: 1;
param2: [{ status=1 }, { status=2 }, { status=4 }]
}
item2
{
param1: 2;
param2: [{ status=4 }, { status=2 }, { status=1 }]
}
我想获取 param2 项中的最后一个状态,该值为 1。如何生成查询?
您可以使用$where运算符(但请记住它很慢)
db.test.find({$where: function() {
return this.param2.length &&
this.param2[this.param2.length-1].status === 1; }})