db.inventory.find( { $and: [ { price: { $ne: 1.99 } }, { price: {$exists: true } } ] } )
这个查询会选择集合inventory中的所有文档,条件是price不等于1.99并且price字段存在,我的问题是现在需要将price后的{ $ne: 1.99 }设置为一个变量,而不是直接写出来。但是我发现假如:
var obj = {},
db.inventory.find( { $and: [ { price: obj }, { price: { $exists: true } }] } )
查询语句就失效了。我想问查询语句中的条件必须是直接写出来,不能放入变量吗?有什么解决方法吗?
已经解决问题,应该直接使用mongoose的链式操作进行查询