mongodb - 在mongodb中使用按位运算进行查询

标签 mongodb mongodb-query bitwise-operators nosql

我需要在 MongoDB 中进行这样的查询:

db.collection.find( { $where : "(this.type & some_num) ^ some_num == 0"} ) 

Some_num 是一个变量,可以是任意整数。

我在 here 阅读了文档这表示 Javascript 查询会减慢执行速度,而且它不能使用索引并且需要表扫描。

上述查询的替代方法是什么?

最佳答案

在 Mongo 中最好的做法是将您计划搜索的计算值存储在一个字段中,然后在其上创建索引。否则,您几乎注定要扫描整个集合。

关于mongodb - 在mongodb中使用按位运算进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20209957/

相关文章:

javascript - 如何查询子数组中的条目与所有条件匹配的文档?

mongodb - 限制 mongodb 集合中的文档数量,没有 FIFO 策略

node.js - Mongoose 模式方法返回不是一个函数

C++ 代码解释

c# - C#中按位与的逆运算是什么?

c - 在 C 中将 uint8 拆分为 4 个单元 2,以便稍后获得单元 10

javascript - 返回插入的子文档

node.js - 如何在分组后对数组值进行排序 - mongodb

MongoDB聚合三个集合

c++ - MongoDB C++ 驱动程序服务器端查询计数