我們能否從 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+ 瀏覽

開啟你的職業生涯

完成課程並獲得認證

開始
廣告