mongodb 中的 limit() 选项如何工作?

How does the limit() option work in mongodb?

假设您有 10,000 个文档的集合,我使用选项 limit(50) 进行查找查询。 mongoDb 如何选择要 return 的 50 个文档。

它是否会自动对它们进行排序(可能按它们的创建日期)?

每次调用都会查询return相同的文档吗? mongodb 中的限制选项如何工作?

mongoDB 是否在文档 returned 之后或查询时对其进行限制。意思是 mongoDB 查询所有文档将结果限制为 50 个文档,还是只查询 50 个文档?

将返回 结果集 的前 50 个文档。

如果不对文档进行排序(或者排序不明确,比如按结果集中多次出现值的字段排序),顺序可能会从一次执行变为接下来。

Will it auto-sort them(maybe by their creation date) or not?

没有

Will the query return the same documents every time it is called?

查询可能会在一段时间内产生相同的结果,然后开始产生不同的结果,例如,如果将另一个文档插入到集合中。

Meaning will mongoDB query all documents the limit the results to 50 documents or will it query the 50 documents only?

取决于查询。如果使用索引,则只会从存储引擎中读取所需的文档。如果在查询执行中使用排序阶段,将从存储中读取所有文档,排序,然后返回所需数量,其余丢弃。