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

집계에서 _id를 숨기는 방법은 무엇입니까?


집계에서 _id를 숨기려면 아래 구문을 사용하십시오 -

db.yourCollectionName.aggregate(
   {$project : {
      _id : 0 ,
      yourIncludeFieldName:1,
      yourIncludeFieldName:1
   }}
).pretty();

위의 구문을 이해하기 위해 문서로 컬렉션을 생성해 보겠습니다. 문서로 컬렉션을 생성하는 쿼리는 다음과 같습니다 -

> db.hideidDemo.insertOne({"UserName":"Larry","UserAge":23,"UserCountryName":"US"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c92b02336de59bd9de06392")
}
> db.hideidDemo.insertOne({"UserName":"Chris","UserAge":21,"UserCountryName":"AUS"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c92b03036de59bd9de06393")
}
> db.hideidDemo.insertOne({"UserName":"Robert","UserAge":26,"UserCountryName":"UK"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c92b04036de59bd9de06394")
}

find() 메서드를 사용하여 컬렉션의 모든 문서를 표시합니다. 쿼리는 다음과 같습니다 -

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

다음은 출력입니다 -

{
   "_id" : ObjectId("5c92b02336de59bd9de06392"),
   "UserName" : "Larry",
   "UserAge" : 23,
   "UserCountryName" : "US"
}
{
   "_id" : ObjectId("5c92b03036de59bd9de06393"),
   "UserName" : "Chris",
   "UserAge" : 21,
   "UserCountryName" : "AUS"
}
{
   "_id" : ObjectId("5c92b04036de59bd9de06394"),
   "UserName" : "Robert",
   "UserAge" : 26,
   "UserCountryName" : "UK"
}

다음은 집계에서 _id를 숨기는 쿼리입니다 -

> db.hideidDemo.aggregate(
   ... {$project : {
      ... _id : 0 ,
      ... UserName:1,
      ... UserCountryName:1
   ... }}
... ).pretty();

다음은 출력입니다 -

{ "UserName" : "Larry", "UserCountryName" : "US" }
{ "UserName" : "Chris", "UserCountryName" : "AUS" }
{ "UserName" : "Robert", "UserCountryName" : "UK" }