먼저 문서로 컬렉션을 생성해 보겠습니다. −
>db.demo144.insertOne({"EmployeeDetails":[{"EmployeeName":"Chris","EmployeeEmail":"Chris12@gmail.com"},{"EmployeeName":"Bob","EmployeeEmail":"bo22@gmail.com"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e32f1d8fdf09dd6d08539b9") } >db.demo144.insertOne({"EmployeeDetails":[{"EmployeeName":"David","EmployeeEmail":"david@gmail.com"},{"EmployeeName":"Carol","EmployeeEmail":"Carol@gmail.com"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5e32f1f5fdf09dd6d08539ba") }
find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo144.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e32f1d8fdf09dd6d08539b9"), "EmployeeDetails" : [ { "EmployeeName" : "Chris", "EmployeeEmail" : "Chris12@gmail.com" }, { "EmployeeName" : "Bob", "EmployeeEmail" : "bo22@gmail.com" } ] } { "_id" : ObjectId("5e32f1f5fdf09dd6d08539ba"), "EmployeeDetails" : [ { "EmployeeName" : "David", "EmployeeEmail" : "david@gmail.com" }, { "EmployeeName" : "Carol", "EmployeeEmail" : "Carol@gmail.com" } ] }
다음은 객체 배열 내에서 결과를 찾고 이메일 주소 필드와 일치하는 쿼리입니다 -
>db.demo144.find({"EmployeeDetails.EmployeeName":"David","EmployeeDetails.EmployeeEmail":"david@gmail.com"},{"EmployeeDetails.EmployeeName":1});
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e32f1f5fdf09dd6d08539ba"), "EmployeeDetails" : [ { "EmployeeName" : "David" }, { "EmployeeName" : "Carol" } ] }