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

값을 배열로 반환하려면 MongoDB에서 반환 형식을 지정하시겠습니까?

<시간/>

이를 위해 집계를 사용하고 $group 및 $addToSet 연산자를 사용하여 배열에 값을 추가합니다.

먼저 문서로 컬렉션을 만들어 보겠습니다. −

> dbspecifyReturnFormatDemoinsertOne({"Subject":"MongoDB"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd364ef71edecf6a1f6c0")
}
> dbspecifyReturnFormatDemoinsertOne({"Subject":"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd369ef71edecf6a1f6c1")
}
> dbspecifyReturnFormatDemoinsertOne({"Subject":"SQL Server"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd36fef71edecf6a1f6c2")
}

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

> dbspecifyReturnFormatDemofind();

출력

{ "_id" : ObjectId("5cefd364ef71edecf6a1f6c0"), "Subject" : "MongoDB" }
{ "_id" : ObjectId("5cefd369ef71edecf6a1f6c1"), "Subject" : "MySQL" }
{ "_id" : ObjectId("5cefd36fef71edecf6a1f6c2"), "Subject" : "SQL Server" }

다음은 반환 형식을 지정하는 쿼리입니다 -

> dbspecifyReturnFormatDemoaggregate([
   {
      "$group": {
         "_id": 0,
         "Subject": {
            "$addToSet": "$Subject"
         }
      }
   },
   {
      "$project": {
         "_id": 0,
         "Subject": 1
      }
   }
]);

출력

{ "Subject" : [ "SQL Server", "MySQL", "MongoDB" ] }