我发现这个问题在C#和Perl中得到了解答,但在本机接口中没有.我以为这样行得通:

db.theColl.find( { _id: ObjectId("4ecbe7f9e8c1c9092c000027") } )

查询没有返回任何结果.我找到4ecbe7f9e8c1c9092c000027的方法是执行db.theColl.find()并获取ObjectId.那批藏品中有几千件物品.

我已经阅读了mongodb上的所有页面.org网站,但没有找到它.这只是一件奇怪的事吗?我觉得这很正常.

推荐答案

一点也不奇怪,人们总是这样做.确保集合名称正确(大小写很重要),ObjectId准确无误.

文件是here

> db.test.insert({x: 1})

> db.test.find()                                               // no criteria
{ "_id" : ObjectId("4ecc05e55dd98a436ddcc47c"), "x" : 1 }      

> db.test.find({"_id" : ObjectId("4ecc05e55dd98a436ddcc47c")}) // explicit
{ "_id" : ObjectId("4ecc05e55dd98a436ddcc47c"), "x" : 1 }

> db.test.find(ObjectId("4ecc05e55dd98a436ddcc47c"))           // shortcut
{ "_id" : ObjectId("4ecc05e55dd98a436ddcc47c"), "x" : 1 }

Mongodb相关问答推荐

MongoDB v4.4聚合的$getfield替代方案

如何在MongoDB中使用Aggregation来计算两个键相同但字段不同的对象数组的总值,并将其合并为一个?

MongoDB对两个串联数组进行排序

无法通过管理邮箱/密码身份验证注册/登录新用户帐户(类型错误:加载失败)

我可以在 MongoDB 中将字段值设置为对象键吗?

如何将交易列表变成 token 数量的对象?

如何在mongodb中级联删除文档?

如何在 Mongoose 中定义一个通用的嵌套对象

聚合/元素子文档作为 mongo 中的顶级文档

Mongoid 有 Map/Reduce 吗?

用 Redis 查询?

使用 nodejs/mongoose 部分更新子文档

MongoDB:自动生成的 ID 为零

MEAN 堆栈文件上传

MongoError:Topology is closed, please connect despite established database connection

MongoDB的数据库管理工具

通过 Java 执行 Mongo like Query (JSON)

我可以只获取 Cursor 对象(pymongo)中的第一项吗?

为什么 Mongo 提示会使查询运行速度提高 10 倍?

全局初始化失败:BadValue Invalid or no user locale set.请确保正确设置 LANG 和/或 LC_* 环境变量