Database

[{"name":"Maths","excludeUserIds":[{"_id":33,"groupIds":["a","b","c"]}]},{"name":"Science","excludeUserIds":[{"_id":24,"groupIds":["a","x","b"]}]},{"name":"Health","excludeUserIds":[]},{"name":"English","excludeUserIds":[{"_id":24,"groupIds":[]}]}]

Query

db.collection.aggregate([{$match:{excludeUserIds:{$not:{$elemMatch:{_id:33,groupIds:{$all:["a"]}}}}}}])

Result