如何使用 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/