前面提到mongodb 中的$where 查询时候,mongo 中的where 查询是不用索引的,所以查询的效率很低,所以能不用$where就尽可能的不用$where,并且在aggregate()中都没有where查询,因此$where 今天优化一下$where 查询,一般我们的where 查询一般都查询在数据库中两个不同的字段是否大于等于或者不等于的情况,例如:db.datas.find({$where:"this[‘54bcfc6c329af61034f7c2fc‘].testRet !== this[‘54bcfc6c329af61034f7c2fc‘].taskRet"}),现在我们就可以写成这个样子了:
db.datas.find({‘this["559e65b3040a5ee37e4505b3"].testRet‘:{$ne:‘this["559e65b3040a5ee37e4505b3"].taskRet‘}})
就可以用this 关键字,不用$where查询了。
时间: 2024-10-16 18:24:58