Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

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" }