我想比较对象键以便做出决定,如下所示。
架构:
var ItemSchema = new Schema({
price: {type: Number},
msrp: {type: Number},
});
查询:
注意:这只是我的意图原型,而不是合法代码。
Item.find({'(100 - ((price * 100)/msrp))' : {$gt: 60 }})
其中msrp和$ gt内的价格应该是查找处理的当前元素的值。
答案 0 :(得分:2)
您可以使用$where
运算符。请注意,由于必须为每条记录执行Javascript代码,因此速度相当慢,因此如果可以,请与索引查询结合使用。您可以详细了解$where
运算符here
Item.find( { $where: function() { return this.price > 100-((this.price*100)/this.msrp) } } );