Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
批量查询mongo集合的最有效方法是什么?例如在 SQL 中,我会做类似的事情:
SELECT * FROM Foo WHERE id > {{floor}} limit 1000;
我发现我可以做一些这里概述的事情
但是关于跳过的大警告让我认为我不应该使用它。(假设集合足够大,足以影响它)。
除了自动生成的 _id 字段外,我的收藏没有任何索引。我不确定是否有办法使用它和 $gt $lt.
如果这很重要,我将使用 Casbah 驱动程序,以防内置秘密酱汁。
该 SQL 查询到 mongo 的字面翻译是
db.foo.find({"id": {"$gt": floor}}).limit(1000)
此查询可以由字段上的索引提供(或者如果您使用该列而不是 named 列,id则由默认索引提供)。_idid
id
_id
没有性能问题limit(),但是skip()对于非常大的值,性能可能会很差,因为服务器本质上需要遍历大量记录,然后才能开始向您返回结果。
limit()
skip()