두 배열의 교집합을 얻으려면 $setIntersection을 집계()와 함께 사용하십시오. 문서로 컬렉션을 만들자 −
> db.demo61.insertOne({"값1":[10,20,30,40,50],"값2":[30,100,70,120,40]});{ "확인됨" :true, "insertedId " :ObjectId("5e286e28cfb11e5c34d8992a")}
find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
> db.demo61.find().pretty();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" :ObjectId("5e286e28cfb11e5c34d8992a"), "값1" :[ 10, 20, 30, 40, 50 ], "값2" :[ 30, 100, 70, 120}, 40>다음은 MongoDB에서 두 배열의 교집합을 구하는 쿼리입니다 -
> db.demo61.aggregate(... [... { $project:{ BothValues:{ $setIntersection:[ "$Values1", "$Values2" ] }} }... ]... );이것은 다음과 같은 출력을 생성합니다 -
{ "_id" :ObjectId("5e286e28cfb11e5c34d8992a"), "BothValues" :[ 30, 40 ] }