我们能否从 MongoDB 查询结果中移除 _id?


要从 MongoDB 结果中移除 _id,你需要将 _id 字段设为 0。以下是语法

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

为了理解它,让我们创建一个带有文档的集合。以下为查询

> db.removeIdDemo.insertOne({"UserName":"John","UserAge":23});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9bb4042d66697741252440")
}
> db.removeIdDemo.insertOne({"UserName":"Mike","UserAge":27});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9bb40c2d66697741252441")
}
> db.removeIdDemo.insertOne({"UserName":"Sam","UserAge":34});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9bb4162d66697741252442")
}
> db.removeIdDemo.insertOne({"UserName":"Carol","UserAge":29});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9bb4222d66697741252443")
}

以下是使用 find() 方法显示集合中所有文档的查询

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

这将生成以下输出

{
   "_id" : ObjectId("5c9bb4042d66697741252440"),
   "UserName" : "John",
   "UserAge" : 23
}
{
   "_id" : ObjectId("5c9bb40c2d66697741252441"),
   "UserName" : "Mike",
   "UserAge" : 27
}
{
   "_id" : ObjectId("5c9bb4162d66697741252442"),
   "UserName" : "Sam",
   "UserAge" : 34
}
{
   "_id" : ObjectId("5c9bb4222d66697741252443"),
   "UserName" : "Carol",
   "UserAge" : 29
}

以下是从 Mongo 结果中移除 _id 的查询

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

这将生成以下输出

{ "UserName" : "John", "UserAge" : 23 }
{ "UserName" : "Mike", "UserAge" : 27 }
{ "UserName" : "Sam", "UserAge" : 34 }
{ "UserName" : "Carol", "UserAge" : 29 }

更新于: 30-7-2019

5k+ 浏览

开启你的职业生涯

完成课程并获得认证

开始
广告
© . All rights reserved.