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

MongoDBはどのように配列にインデックスを付けますか?


MongoDBは、単一の要素をクエリできるように、配列のすべての値にインデックスを付けます。

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

> db.indexingForArrayElementDemo.insertOne({"StudentFavouriteSubject":["MongoDB","MySQL"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8acdca6cea1f28b7aa0816")
}

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

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

以下は出力です-

{
   "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
   "StudentFavouriteSubject" : [
      "MongoDB",
      "MySQL"
   ]
}

これは、MongoDBインデックス配列−

を使用するクエリです。
> db.indexingForArrayElementDemo.ensureIndex({"StudentFavouriteSubject":1});

以下は出力です-

{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}

個々の配列要素のクエリは次のとおりです-

> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MongoDB"}).pretty();

以下は出力です-

{
   "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
   "StudentFavouriteSubject" : [
      "MongoDB",
      "MySQL"
   ]
}

別の例を見てみましょう。クエリは次のとおりです-

> db.indexingForArrayElementDemo.find({"StudentFavouriteSubject":"MySQL"}).pretty();

以下は出力です-

{
   "_id" : ObjectId("5c8acdca6cea1f28b7aa0816"),
   "StudentFavouriteSubject" : [
      "MongoDB",
      "MySQL"
   ]
}

  1. MongoDBで配列の配列をクエリしますか?

    $ in演算子を使用して、MongoDBの配列の配列をクエリします。概念を理解するために、ドキュメントを使用してコレクションを作成しましょう。ドキュメントを使用してコレクションを作成するためのクエリは次のとおりです- > db.arrayOfArraysDemo.insertOne({"EmployeeName":"Larry","EmployeeSkills":[["Java","MongoDB","MySQL","SQL Server"]]});

  2. MongoDBでコンソールをクリアする方法は?

    MongoDBでコンソールをクリアするには、次の2つの構文のいずれかを使用できます。 最初の構文は次のとおりです。これは、キーボードショートカットの使用法です- Ctrl + L 上記のキーを押すと、MongoDBでコンソールをクリアできます。 2番目の構文は次のとおりです- cls 上記の構文を理解するために、それらを1つずつ実装してみましょう。これが私のコンソールのスナップショットです。 最初のクエリは、MongoDBのコンソールをクリアするために次のとおりです- Ctrl+L; 以下は出力です- 上記のサンプル出力を見てください。コンソールはクリアされています。