이를 위해 $in과 함께 $not을 사용합니다. 문서로 컬렉션을 만들자 −
[ { id: "101", subjectid: [ "102" ] }, { id: "102", subjectid: [ "102" ] } ]
다음은 스냅샷입니다.
find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -
db.collection.find()
이것은 다음과 같은 출력을 생성합니다 -
[ { "_id": ObjectId("5a934e000102030405000000"), "id": "101", "subjectid": [ "102" ] }, { "_id": ObjectId("5a934e000102030405000001"), "id": "102", "subjectid": [ "102" ] } ]
다음은 일치하는 필드 배열 값을 제외한 값을 가져오기 위해 $expr, $not 및 $in을 사용하는 쿼리입니다 -
db.collection.find({ $expr: { $not:{ $in: [ "$id", "$subjectid" ] } } })
이것은 다음과 같은 출력을 생성합니다 -
[ { "_id": ObjectId("5a934e000102030405000000"), "id": "101", "subjectid": [ "102" ] } ]