MongoDBのインデックスは、インデックスが作成されるドキュメントのいくつかのフィールドのデータを保持する特別なデータ構造です。 インデックスは、ドキュメント全体を検索する代わりに、少数のフィールドのみを保持するインデックスで検索が実行されるため、データベース内の検索操作の速度を向上させます。 一方、インデックスが多すぎると、インデックスによって使用される追加の書き込みおよび追加のデータ領域のために、挿入、更新、および削除操作のパ
MongoDBでインデックスを作成する方法
構文:p>
db.collection_name.createIndex({field_name: 1 or -1})
値1は昇順、-1は降順です。たとえば、コレクションがありますstudentdata
。 このコレクション内のドキュメントには、次のフィールドがあります。
student_name、student_id、student_age
student_nameフィールドのインデックスを昇順で作成したいとします。
db.studentdata.createIndex({student_name: 1})
:
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1}
student_nameにインデックスを作成しました。 したがって、コレクション内で頻繁に検索されるフィールドにインデックスを作成するには、これが重要です。
MongoDB–コレクション内のインデックスを見つける
getIndexes()メソッドを使用して、コレクションに作成されたすべてのインデックスを検索できます。 このメソッドの構文は次のとおりです:
db.collection_name.getIndexes()
だから、studentdata
コレクションのインデックスを取得するには、コマンドは次のようになります。
> db.studentdata.getIndexes()
出力は、このコレクションに二つのインデックスがあることを示しています。 _Idに作成されたデフォルトのインデックスとstudent_nameフィールドに作成されたインデックス。
MongoDB–コレクション内のインデックスを削除する
特定のインデックスまたはすべてのインデックスを削除できます。
特定のインデックスを削除する:
この目的のためにdropIndex()メソッドが使用されます。p>コレクション内のstudent_name
studentdata
。 このためのコマンド:
db.studentdata.dropIndex({student_name: 1})
nIndexesWas:このコマンドが実行される前にいくつのインデックスがあったかを示します
ok:1:これは、コ
すべてのインデックスを削除する:
コレクションのすべてのインデックスを削除するには、dropIndexes()メソッドを使用します。
Dropindexs()メソッドの構文:p>コレクションのすべてのインデックスを削除したいとしましょう。
db.collection_name.dropIndexes()
コレクションのすべてのインデックスを削除したいとしましょう。studentdata
studentdata
コレクションのすべてのインデックスを削除したいとしましょう。
db.studentdata.dropIndexes()
“non-_id indexes dropped for collection”というメッセージは、デフォルトのインデックス_idが つまり、このメソッドを使用すると、作成したインデックスのみを削除でき、_idフィールドに作成されたデフォルトのインデックスは削除できません。