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

이름 목록을 기반으로 MongoDB 쿼리 결과에서 태그 수를 얻는 방법은 무엇입니까?

<시간/>

$in 연산자를 사용할 수 있습니다. 먼저 문서로 컬렉션을 생성해 보겠습니다. −

> db.tagCountDemo.insertOne({"ListOfNames":["John","Sam","Carol"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd64b387924bb85b3f48944")
}
> db.tagCountDemo.insertOne({"ListOfNames":["Bob","David","John"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd64b4b7924bb85b3f48945")
}
> db.tagCountDemo.insertOne({"ListOfNames":["Mike","Robert","Chris"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd64b5d7924bb85b3f48946")
}
> db.tagCountDemo.insertOne({"ListOfNames":["James","Carol","Jace"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd64b717924bb85b3f48947")
}

다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -

> db.tagCountDemo.find().pretty();

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

{
   "_id" : ObjectId("5cd64b387924bb85b3f48944"),
   "ListOfNames" : [
      "John",
      "Sam",
      "Carol"
   ]
}
{
   "_id" : ObjectId("5cd64b4b7924bb85b3f48945"),
   "ListOfNames" : [
      "Bob",
      "David",
      "John"
   ]
}
{
   "_id" : ObjectId("5cd64b5d7924bb85b3f48946"),
   "ListOfNames" : [
      "Mike",
      "Robert",
      "Chris"
   ]
}
{
   "_id" : ObjectId("5cd64b717924bb85b3f48947"),
   "ListOfNames" : [
      "James",
      "Carol",
      "Jace"
   ]
}

다음은 MongoDB에서 태그 수를 가져오는 쿼리입니다.

> db.tagCountDemo.find({"ListOfNames":{$in:['John','Carol']}});

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

{ "_id" : ObjectId("5cd64b387924bb85b3f48944"), "ListOfNames" : [ "John", "Sam", "Carol" ] }
{ "_id" : ObjectId("5cd64b4b7924bb85b3f48945"), "ListOfNames" : [ "Bob", "David", "John" ] }
{ "_id" : ObjectId("5cd64b717924bb85b3f48947"), "ListOfNames" : [ "James", "Carol", "Jace" ] }