MongoDB限制查找结果

问题描述 投票:0回答:2

如何查询集合并限制返回的结果。假设我有一个包含 500M 文档的数据库,但我只想搜索并返回前 10 个匹配项,而不必搜索整个集合(出于性能原因)。

理想情况下,我可以在 O(m-n) 时间内返回第 n 到 m 个结果。

如果这可能或如何做,有什么想法吗?

mongodb mongodb-query
2个回答
42
投票

您可以通过应用

skip
limit
:

来做到这一点
db.collection.find(<query>).limit(<number>).skip(<number>)

您可以在限制查询结果数量以减少网络需求

上阅读有关性能问题的更多信息

编辑

limit
skip
可以互换,
skip
总是先调用。


0
投票
db.collection.find({desired_conditions}).limit(postive_int)

这里你只需要将 Positive_int 替换为你想要返回的结果数

© www.soinside.com 2019 - 2024. All rights reserved.