如何透過在 MongoDB 中使用聚合框架排除 _id,而不包括其他欄位?
讓我們首先使用文件建立一個集合 -
> db.excludeIdDemo.insertOne({"StudentFirstName":"John","StudentAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5cd701a56d78f205348bc632") } > db.excludeIdDemo.insertOne({"StudentFirstName":"Robert","StudentAge":20}); { "acknowledged" : true, "insertedId" : ObjectId("5cd701af6d78f205348bc633") } > db.excludeIdDemo.insertOne({"StudentFirstName":"Chris","StudentAge":24}); { "acknowledged" : true, "insertedId" : ObjectId("5cd701b86d78f205348bc634") }
以下是使用 find() 方法顯示集合中所有文件的查詢 -
> db.excludeIdDemo.find();
這將產生以下輸出 -
{ "_id" : ObjectId("5cd701a56d78f205348bc632"), "StudentFirstName" : "John", "StudentAge" : 21 } { "_id" : ObjectId("5cd701af6d78f205348bc633"), "StudentFirstName" : "Robert", "StudentAge" : 20 } { "_id" : ObjectId("5cd701b86d78f205348bc634"), "StudentFirstName" : "Chris", "StudentAge" : 24 }
以下是使用聚合框架不包括 _id 而又不包括其他欄位的查詢 -
> db.excludeIdDemo.aggregate( { $project : { _id : 0, "StudentFirstName": 1 } } );
這將產生以下輸出 -
{ "StudentFirstName" : "John" } { "StudentFirstName" : "Robert" } { "StudentFirstName" : "Chris" }
廣告