如何使用 Mongo Compass 并通过 ObjectID 进行搜索?我一直在为此寻找文档,但没有取得任何成功。我努力了:

{ "_id" : "58f8085dc1840e050034d98f" }

{ "$oid" : "58f8085dc1840e050034d98f" }

{ "id" : "58f8085dc1840e050034d98f" }

这些似乎都不起作用,而且越来越令人沮丧。另外,旁注 - 在 Compass 中显示文档时是否可以设置跳过/限制?

提前致谢!

最佳答案

更新 较新版本的 Compass 现在支持查询 ObjectId,类似于通过 mongo shell 查询它们的方式($oid 语法在这些较新版本中不起作用):

{_id: ObjectId('58f8085dc1840e050034d98f')}

如果您使用的是 1.10.x 之前的旧版本,请在查询框中输入以下内容:
{"_id":{"$oid":"58f8085dc1840e050034d98f"}}

还值得指出的是,在 UI 中,您可以单击 _id 之一,它将根据您单击的内容自动填充查询框。您还可以通过 shift+单击多个字段来创建复合(和-ed)查询条件,或者您可以单击并拖动以选择一个范围。

Skip 和 Limit 支持版本 >= 1.8.x 在 Documents 选项卡下浏览时是否支持跳过和限制。单击查询栏右侧的“选项”按钮。有关说明和详细信息,请参阅 Query Bar 文档。

Schema 选项卡仅支持限制,因为这将对文档进行抽样,而在该上下文中跳过实际上没有意义。

要单击 _id,您需要位于 Schema 选项卡上。如果您的 _id 是 ObjectId 类型,分布的可视化将显示为日期范围,您可以拖过一行或多行以根据 _id 填充查询。如果您的 _id 是其他类型,它们的某些部分将单独显示,您可以单击、拖动或按住 Shift 键单击它们。

关于mongodb - 在 Mongodb Compass 中按 ObjectId 搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43525523/

10-14 03:44