Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

MongoDB에서 여러 단일 검색보다 $in 검색을 사용하는 것이 더 빠릅니까?

<시간/>

예, $in을 사용하는 것이 더 빠릅니다. 예제를 보고 문서로 컬렉션을 생성해 보겠습니다. −

> db.demo653.insertOne({subject:"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea04b274deddd72997713c0")
}
> db.demo653.insertOne({subject:"MongoDB"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea04b304deddd72997713c1")
}
> db.demo653.insertOne({subject:"Java"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea04b354deddd72997713c2")
}
> db.demo653.insertOne({subject:"C"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea04b384deddd72997713c3")
}
> db.demo653.insertOne({subject:"C++"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea04b3b4deddd72997713c4")
}

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo653.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5ea04b274deddd72997713c0"), "subject" : "MySQL" }
{ "_id" : ObjectId("5ea04b304deddd72997713c1"), "subject" : "MongoDB" }
{ "_id" : ObjectId("5ea04b354deddd72997713c2"), "subject" : "Java" }
{ "_id" : ObjectId("5ea04b384deddd72997713c3"), "subject" : "C" }
{ "_id" : ObjectId("5ea04b3b4deddd72997713c4"), "subject" : "C++" }

다음은 $in을 사용하여 여러 개의 단일 검색보다 빠르게 검색하는 쿼리입니다. −

> db.demo653.find({subject:{$in:["MySQL","C++","C"]}});

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5ea04b274deddd72997713c0"), "subject" : "MySQL" }
{ "_id" : ObjectId("5ea04b384deddd72997713c3"), "subject" : "C" }
{ "_id" : ObjectId("5ea04b3b4deddd72997713c4"), "subject" : "C++" }