$in 연산자를 사용하여 값이 배열에 있는지 여부를 확인할 수 있습니다. 먼저 문서로 컬렉션을 생성해 보겠습니다. −
> db.valueInArrayDemo.insertOne({"UserName":"John","UserMessage":["Hi","Hello","Bye"]}); { "acknowledged" : true, "insertedId" : ObjectId("5cd684cf7924bb85b3f48959") } > db.valueInArrayDemo.insertOne({"UserName":"Larry","UserMessage":["Thank You","Amazing","Nice"]}); { "acknowledged" : true, "insertedId" : ObjectId("5cd684d27924bb85b3f4895a") } >db.valueInArrayDemo.insertOne({"UserName":"Carol","UserMessage":["Awesome","Bye","Cool"]}); { "acknowledged" : true, "insertedId" : ObjectId("5cd684d87924bb85b3f4895b") }
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -
> db.valueInArrayDemo.find().pretty();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5cd684cf7924bb85b3f48959"), "UserName" : "John", "UserMessage" : [ "Hi", "Hello", "Bye" ] } { "_id" : ObjectId("5cd684d27924bb85b3f4895a"), "UserName" : "Larry", "UserMessage" : [ "Thank You", "Amazing", "Nice" ] } { "_id" : ObjectId("5cd684d87924bb85b3f4895b"), "UserName" : "Carol", "UserMessage" : [ "Awesome", "Bye", "Cool" ] }
다음은 $in −
배열에 특정 값이 있는지 확인하는 쿼리입니다.> db.valueInArrayDemo.find({UserMessage:{$in:["Bye"]}});
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5cd684cf7924bb85b3f48959"), "UserName" : "John", "UserMessage" : [ "Hi", "Hello", "Bye" ] } { "_id" : ObjectId("5cd684d87924bb85b3f4895b"), "UserName" : "Carol", "UserMessage" : [ "Awesome", "Bye", "Cool" ] }