MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBで二重ネスト配列を作成するにはどうすればよいですか?


MongoDBで二重ネスト配列を作成するには、ドキュメントを含むコレクションを作成するクエリを実装しましょう。その中で、同じプロジェクトの開発に使用されたプロジェクト名とテクノロジーを使用して、学生の詳細を表示する二重のネストされた配列を作成しました。

> db.doubleNestedArrayDemo.insertOne(
... {
...    "StudentId" : "1000",
...    "StudentName" : "Larry",
...    "StudentDetails" : [
...    {
...       "ProjectName" : "Online Banking",
...       "ProjectDetails" : [
...       {
...          "TechnologyUsed" : "Java"
...       },
...       {
...          "TechnologyUsed" : "MySQL in Backend"
...       }
...       ]
...    }
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c992bd7330fd0aa0d2fe4cc")
}
> db.doubleNestedArrayDemo.insertOne( { "StudentId" : "1001", "StudentName" : "Robert", "StudentDetails" : [ { "ProjectName" : "Student Web Tracker", "ProjectDetails" : [ { "TechnologyUsed" : "Django Framework" }, { "TechnologyUsed" : "MongoDB in Backend" } ] } ] } );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c992cdb330fd0aa0d2fe4cd")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです

> db.doubleNestedArrayDemo.find().pretty()

これにより、次の出力が生成されます

{
   "_id" : ObjectId("5c992bd7330fd0aa0d2fe4cc"),
   "StudentId" : "1000",
   "StudentName" : "Larry",
   "StudentDetails" : [
      {
         "ProjectName" : "Online Banking",
         "ProjectDetails" : [
            {
               "TechnologyUsed" : "Java"
            },
            {
               "TechnologyUsed" : "MySQL in Backend"
            }
         ]
      }
   ]
}
{
   "_id" : ObjectId("5c992cdb330fd0aa0d2fe4cd"),
   "StudentId" : "1001",
   "StudentName" : "Robert",
   "StudentDetails" : [
      {
         "ProjectName" : "Student Web Tracker",
         "ProjectDetails" : [
            {
               "TechnologyUsed" : "Django Framework"
            },
            {
               "TechnologyUsed" : "MongoDB in Backend"
            }
         ]
      }
   ]
}

  1. ネストされた配列をソートするMongoDBクエリ?

    MongoDBでネストされた配列を並べ替えるには、$sortを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo505.insertOne( ... { ...    "details": [ ...    { ...       Name:"Chris", ...       "Score":58 ...    }, { ... ...      

  2. MongoDB配列の要素を削除するにはどうすればよいですか?

    要素を削除するには、MongoDBで$ pullを更新して、使用します。 $ pull演算子は、既存の配列から、指定された条件に一致する1つまたは複数の値のすべてのインスタンスを削除します。 まず、ドキュメントを使用してコレクションを作成しましょう- db.demo541.insertOne({"software":{"services":["gmail","facebook","yahoo"]}});{    "acknowledged" : true