Database
db={"users":[{"_id":1,"username":"User Test","type":"users"},{"_id":2,"username":"User 2","type":"users"}],"posts":[{"_id":1,"name":"Post Test","type":"posts"},{"_id":2,"name":"Post 2","type":"posts"}]}
Query
db.users.aggregate([{"$unionWith":"posts"},{"$match":{$or:[{"username":{"$regex":"test","$options":"i"}},{"name":{"$regex":"test","$options":"i"}}]}}])