객체 배열을 검색하려면 MongoDB find()를 사용합니다. find() 메서드는 컬렉션이나 보기에서 문서를 선택하고 선택한 문서에 커서를 반환합니다.
문서로 컬렉션을 만들자 −
> db.demo484.insertOne(
... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'David' }, { 'Name3' : 'Bob' } ] }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a1")
}
> db.demo484.insertOne(
... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'Carol' }, { 'Name3' : 'Bob' } ] }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a2")
}
> db.demo484.insertOne(
... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'Carol' }, { 'Name3' : 'Mike' } ] }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a3")
} find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo484.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a1"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {
"Name2" : "David" }, { "Name3" : "Bob" } ] }
{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a2"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {
"Name2" : "Carol" }, { "Name3" : "Bob" } ] }
{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a3"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {
"Name2" : "Carol" }, { "Name3" : "Mike" } ] } 다음은 MongoDB 컬렉션에서 객체 배열을 검색하는 쿼리입니다 -
> db.demo484.find(
... {$or: [
... {'details.Name2': 'Carol', 'details.Name3': 'Mike'},
... {'details.Name2': 'Carol', 'details.Name3': 'Bob'}
... ]}
... ) 이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a2"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {
"Name2" : "Carol" }, { "Name3" : "Bob" } ] }
{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a3"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {
"Name2" : "Carol" }, { "Name3" : "Mike" } ] }