먼저 문서로 컬렉션을 생성해 보겠습니다. −
> db.demo277.insertOne({"details":[{"FirstName":"John"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e48fb21dd099650a5401a52") } > db.demo277.insertOne({"details":[{"FirstName":"David"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e48fb27dd099650a5401a53") } > db.demo277.insertOne({"details":[{"FirstName":"Chris"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e48fb2bdd099650a5401a54") }
find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo277.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e48fb21dd099650a5401a52"), "details" : [ { "FirstName" : "John" } ] } { "_id" : ObjectId("5e48fb27dd099650a5401a53"), "details" : [ { "FirstName" : "David" } ] } { "_id" : ObjectId("5e48fb2bdd099650a5401a54"), "details" : [ { "FirstName" : "Chris" } ] }
다음은 전체 배열에 대해 다중 키 인덱싱을 구현하는 쿼리입니다. 전체 문서를 스캔합니다 -
> db.demo277.find({"details":{FirstName:"David"}});
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e48fb27dd099650a5401a53"), "details" : [ { "FirstName" : "David" } ] }