如何查询集合并限制返回的结果。假设我有一个包含 500M 文档的数据库,但我只想搜索并返回前 10 个匹配项,而不必搜索整个集合(出于性能原因)。
理想情况下,我可以在 O(m-n) 时间内返回第 n 到 m 个结果。
如果这可能或如何做,有什么想法吗?
您可以通过应用
skip
limit
db.collection.find(<query>).limit(<number>).skip(<number>)
您可以在限制查询结果数量以减少网络需求
编辑:
db.collection.find({desired_conditions}).limit(postive_int)
这里你只需要将 Positive_int 替换为你想要返回的结果数