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

  1. 配列値をMongoDBに保存する方法は?

    まず、配列値を格納しているドキュメントを含むコレクションを作成しましょう- >db.demo321.insertOne({"UserDetails":[{"UserId":101,"UserName":"Chris"},{"UserId":102,"UserName":"Mike"}]}); {    "acknowledged" : true,    "insertedId&qu

  2. MongoDBを使用して、配列内の個別の値の長さを取得します

    個別の値を取得するには、MongoDBDISTINCTを使用します。長さについては、LENGTH()を使用してください。ドキュメントを使用してコレクションを作成しましょう- > db.demo36.insertOne({"Names":["Chris","Bob"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e17643bcfb11e5c34d898d4"