RoboMongo:不显示所有文档

RoboMongo: Doesn't display all documents

当我打开一个集合时,它只显示前 50 个文档,而不是所有文档。如何让 RoboMongo 显示集合中的所有文档(最好是自动显示)?

robomongo result

您可以更改默认批量大小:

  • 编辑 robomongo.json(在 Linux/MacOS 上的 ~/.config/robomongo/<version>/ 中,在 Windows 上的 c:\Users\YourName\.config\<version>/ 中)
  • 更改batchSize属性,您可以选择固定大小的值(例如100)或选择0表示"all documents"( h/t @PaulRey 虽然我在使用这个符号时得到了不同的结果,请参阅这个问题下面的评论):

    {
      "batchSize" : 100,
      ...
    }
    
  • 保存robomongo.json并重启RoboMongo

这允许您增加默认的批量大小,尽管可能会导致等待结果的时间更长。

更多详情in the docs

2019 年 12 月 6 日更新:初始解决方案不适用于 Robomongo v1.3.1。如果输入 0,Robomongo 将抛出错误。请参阅 EDIT 1 以获取新的解决方案。

右上角有一个输入框,可以让您在查询下方更改显示文档的数量。将其更改为 0,然后按 Enter。它将加载所有文档。

即使 50 之后再次出现,您已经显示了所有文档。

编辑 1:以上内容似乎已在较新版本中修复(从 v1.3.1 开始)。

正如@learnsomemore 在评论中所建议的,您可以在查询之前添加 DBQuery.shellBatchSize = 500; 以更改返回的数组大小。

这是最初在 a comment by @davidm06 in the GitHub issue "Aggregate only shows 50 results #1157" from the RoboMongo public repository 中给出的。

您也可以在最后使用 toArray() 来一次获得整个结果。