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

문서를 찾는 동안 MongoDB가 객체 ID를 반환하지 않도록 하는 방법은 무엇입니까?

<시간/>

문서를 찾는 동안 MongoDB가 개체 ID를 반환하는 것을 방지하려면 _id를 0으로 설정해야 합니다. 먼저 문서로 컬렉션을 생성하겠습니다.

> db.preventObjectIdDemo.insertOne(
...    {
...
...       "StudentName" : "Chris",
...       "StudentDetails" : [
...          {
...             "StudentTotalScore" : 540,
...             "StudentCountryName" : "US"
...          },
...          {
...             "StudentTotalScore" : 489,
...             "StudentCountryName" : "UK"
...          }
...       ]
...    }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5ca20a9c66324ffac2a7dc63")
}

다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다.

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

그러면 다음과 같은 출력이 생성됩니다.

{
   "_id" : ObjectId("5ca20a9c66324ffac2a7dc63"),
   "StudentName" : "Chris",
   "StudentDetails" : [
      {
         "StudentTotalScore" : 540,
         "StudentCountryName" : "US"
      },
      {
         "StudentTotalScore" : 489,
         "StudentCountryName" : "UK"
      }
   ]
}

다음은 문서를 찾을 때 MongoDB가 개체 ID를 반환하지 못하도록 하는 쿼리입니다.

> db.preventObjectIdDemo.find({ _id: ObjectId("5ca20a9c66324ffac2a7dc63")},
{StudentDetails: { $slice: [0, 1] } ,'_id': 0} ).pretty();

다음은 ObjectID가 표시되지 않는 출력입니다.

{
   "StudentName" : "Chris",
   "StudentDetails" : [
      {
         "StudentTotalScore" : 540,
         "StudentCountryName" : "US"
      }
   ]
}