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

MongoDBでネストされたインデックスを作成するにはどうすればよいですか?


MongoDBでネストされたインデックスを作成するには、createIndex()またはensureIndex()を使用できます。構文は次のとおりです-

db.yourCollectionName.createIndex({"yourOuterFieldName.yourInnerFieldName.yourSecondInnerFieldName": 1});

構文を理解するために、ドキュメントを使用してコレクションを作成しましょう。ドキュメントを使用してコレクションを作成するためのクエリは次のとおりです-

> db.nestedIndexDemo.insertOne(
   ... {
      ...
      ... "CustomerId":101,
      ... "CustomerDetails":
      ... {
         ... "CustomerListDetails":
         ... {
            ... "CustomerName":"Larry",
            ... "CustomerProjectName": "Project-1",
            ... "CustomerCountryName":"US"
         ... }
      ... }
   ... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8fc565d3c9d04998abf010")
}

find()メソッドを使用して、コレクションのすべてのドキュメントを表示します。クエリは次のとおりです-

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

以下は出力です-

{
   "_id" : ObjectId("5c8fc565d3c9d04998abf010"),
   "CustomerId" : 101,
   "CustomerDetails" : {
      "CustomerListDetails" : {
         "CustomerName" : "Larry",
         "CustomerProjectName" : "Project-1",
         "CustomerCountryName" : "US"
      }
   }
}

MongoDBでネストされたインデックスを作成するためのクエリは次のとおりです。

> db.nestedIndexDemo.createIndex({"CustomerDetails.CustomerListDetails.CustomerCountryName": 1});
{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}

インデックスを表示するクエリは次のとおりです-

> db.nestedIndexDemo.getIndexes();

以下は出力です-

[
   {
      "v" : 2,
      "key" : {
         "_id" : 1
      },
      "name" : "_id_",
      "ns" : "test.nestedIndexDemo"
   },
   {
      "v" : 2,
      "key" : {
         "CustomerDetails.CustomerListDetails.CustomerCountryName" : 1
      },
      "name" : "CustomerDetails.CustomerListDetails.CustomerCountryName_1",
      "ns" : "test.nestedIndexDemo"
   }
]

  1. MicrosoftWordでインデックスを作成する方法

    ユーザーとして、 Microsoft Wordで長いドキュメントを作成する場合 、インデックスは潜在的な読者にとって便利なツールです。通常、本の裏に索引が表示されます。読者は単語やフレーズを検索して、そのトピックを参照しているページを見つけることができます。 同様に、Microsoft Wordの目次には、ユーザーがインデックスを挿入して自動的に更新することができます。これにより、これらの優れたリファレンスソースを作成するための手作業の多くが不要になります。ここでは、ユーザーにインデックスの作成方法とWordでの更新方法を示します。 Wordでインデックスを作成する方法 以下にリスト

  2. ネストされたPython辞書を作成する方法は?

    辞書オブジェクトは変更可能です。したがって、1つのディクショナリオブジェクトをキーの値コンポーネントとして使用できます。したがって、ネストされたディクショナリオブジェクトを作成できます。別のディクショナリオブジェクトは、キーに関連付けられた値として定義されます。 >>> students={"student1":{"name":"Raaj", "age":23, "subjects":["Phy", "Che", "maths&