Database
[{"transaction":ISODate("2018-10-16T04:00:07.000Z"),"cardnumber":"1000 0000 0002 0356"},{"transaction":ISODate("2018-10-16T04:00:07.000Z"),"cardnumber":"1000 0000 0002 0358"},{"transaction":ISODate("2018-09-16T04:00:07.000Z"),"cardnumber":"1000 0000 0002 0356"}]
Query
db.collection.aggregate([{$group:{_id:{year:{$year:"$transaction"},month:{$month:"$transaction"}},results:{$push:"$$CURRENT.cardnumber"}}},{"$group":{"_id":null,"results":{"$push":"$results"},"result":{"$first":"$results"}}},{"$project":{"results":{"$reduce":{"input":"$results","initialValue":"$result","in":{"$setIntersection":["$$value","$$this"]}}}}}])