컬렉션의 인덱스를 표시하려면 getIndexes()를 사용할 수 있습니다. 구문은 다음과 같습니다 -
db.yourCollectionName.getIndexes();
개념을 이해하기 위해 문서로 컬렉션을 만들어 보겠습니다. 문서로 컬렉션을 생성하는 쿼리는 다음과 같습니다 -
> db.indexDemo.insertOne({"StudentName":"Larry","StudentAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5c8f7c4f2f684a30fbdfd599") } > db.indexDemo.insertOne({"StudentName":"Mike","StudentAge":24}); { "acknowledged" : true, "insertedId" : ObjectId("5c8f7c552f684a30fbdfd59a") }
find() 메서드를 사용하여 컬렉션의 모든 문서를 표시합니다. 쿼리는 다음과 같습니다 -
> db.indexDemo.insertOne({"StudentName":"Carol","StudentAge":20});
다음은 출력입니다 -
{ "acknowledged" : true, "insertedId" : ObjectId("5c8f7c5e2f684a30fbdfd59b") } > db.indexDemo.find().pretty(); { "_id" : ObjectId("5c8f7c4f2f684a30fbdfd599"), "StudentName" : "Larry", "StudentAge" : 21 } { "_id" : ObjectId("5c8f7c552f684a30fbdfd59a"), "StudentName" : "Mike", "StudentAge" : 24 } { "_id" : ObjectId("5c8f7c5e2f684a30fbdfd59b"), "StudentName" : "Carol", "StudentAge" : 20 }
다음은 인덱스를 생성하는 쿼리입니다 -
> db.indexDemo.createIndex({"StudentName":-1,"StudentAge":-1});
다음은 출력입니다.
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 2, "numIndexesAfter" : 3, "ok" : 1 }
다음은 컬렉션의 인덱스를 표시하는 쿼리입니다. 컬렉션 이름은 "indexDemo"입니다 -
> db.indexDemo.getIndexes();
다음은 출력입니다 -
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "test.indexDemo" }, { "v" : 2, "key" : { "StudentName" : -1 }, "name" : "StudentName_-1", "ns" : "test.indexDemo" }, { "v" : 2, "key" : { "StudentName" : -1, "StudentAge" : -1 }, "name" : "StudentName_-1_StudentAge_-1", "ns" : "test.indexDemo" } ]