MongoDB find() 函数可以避免显示 _id 吗?

mongodbdatabasebig data analytics更新于 2026/1/13 6:52:17

是的,我们可以避免使用 _id,在 MongoDB 中使用以下语法 −

db.yourCollectionName.find({},{ _id:0});

首先,让我们创建一个包含文档的集合:>

> db.excludeIdDemo.insertOne({"CustomerName":"Larry"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd7f62c1a844af18acdffb9")
}
> db.excludeIdDemo.insertOne({"CustomerName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd7f6311a844af18acdffba")
}
> db.excludeIdDemo.insertOne({"CustomerName":"Mike"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd7f6351a844af18acdffbb")
}
> db.excludeIdDemo.insertOne({"CustomerName":"Bob"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd7f6381a844af18acdffbc")
}

以下查询借助 find() 方法显示集合中的所有文档 −

> db.excludeIdDemo.find().pretty();

将产生以下输出 −

{ "_id" : ObjectId("5cd7f62c1a844af18acdffb9"), "CustomerName" : "Larry" }
{ "_id" : ObjectId("5cd7f6311a844af18acdffba"), "CustomerName" : "Chris" }
{ "_id" : ObjectId("5cd7f6351a844af18acdffbb"), "CustomerName" : "Mike" }
{ "_id" : ObjectId("5cd7f6381a844af18acdffbc"), "CustomerName"Bob" }

以下是在 find() 中排除 _id 的查询 −

> db.excludeIdDemo.find({},{ _id:0});

这将产生以下输出 −

{ "CustomerName" : "Larry" }
{ "CustomerName" : "Chris" }
{ "CustomerName" : "Mike" }
{ "CustomerName" : "Bob" }

相关文章