是否可以在MongoDB文档中的两个属性之间进行比较(例如,大于“>”)?
例如,如果我有一份文件:
{
"t" : [100, 200]
}
是否有可能做这样的事情来查找“t”中第一项低于“t”中第二项的文件?
db.item.find( {"t.0": {$lte: "t.1"} } );
我意识到我可以先查询所有相关文档,然后在我的应用程序中进行过滤,但想知道MongoDB中是否有本地方式来执行此操作。
感谢您的帮助, 约什
答案 0 :(得分:2)
你无法在任何查找操作中执行此操作。但你可以使用javascript:
db.item.find({ $where : "this.t[0] > this.t[1]" });
答案 1 :(得分:0)
虽然它不是完全重复,但我认为Mongodb find comparing array elements的已接受答案的第一部分可能会解决您的问题。