Database

db={"Libraries":[{"_id":ObjectId("5f45440ee89590218e83a697"),"workingHours":"8:00 PM - 8:00 AM","cityId":ObjectId("5f47878c95f47e209402fe15")},{"_id":ObjectId("5f478725d1507323a80efa31"),"workingHours":"8:00 PM - 8:00 AM","cityId":ObjectId("5f47878c95f47e209402fe15")},{"_id":ObjectId("5f47872f7c4872d4983961f5"),"workingHours":"8:00 PM - 8:00 AM","cityId":ObjectId("5f4787918b343fff4f52c270")}],"Books":[{"_id":ObjectId("5f454423be823729015661ed"),"published":true,"hidden":false,"title":"The Hobbit, or There and Back Again","libraryId":ObjectId("5f45440ee89590218e83a697")},{"_id":ObjectId("5f45445b876d08649b88ed5a"),"published":true,"hidden":false,"title":"Harry Potter and the Philosopher's Stone","libraryId":ObjectId("5f45440ee89590218e83a697")},{"_id":ObjectId("5f45446c7e33ca70363f629a"),"published":true,"hidden":false,"title":"Harry Potter and the Cursed Child","libraryId":ObjectId("5f45440ee89590218e83a697")},{"_id":ObjectId("5f45447285f9b3e4cb8739ad"),"published":true,"hidden":false,"title":"Fantastic Beasts and Where to Find Them","libraryId":ObjectId("5f45440ee89590218e83a697")},{"_id":ObjectId("5f45449fc121a20afa4fbb96"),"published":false,"hidden":false,"title":"Universal Parks & Resorts","libraryId":ObjectId("5f45440ee89590218e83a697")},{"_id":ObjectId("5f4544a5f13839bbe89edb23"),"published":false,"hidden":true,"title":"Ministry of Dawn","libraryId":ObjectId("5f45440ee89590218e83a697")}],"cities":[{"_id":ObjectId("5f47878c95f47e209402fe15"),"name":"Warsaw","description":"Sample description"},{"_id":ObjectId("5f4787918b343fff4f52c270"),"name":"Chicago","description":"Sample description"}]}

Query

db.cities.aggregate([{"$lookup":{"from":"Libraries","localField":"_id","foreignField":"cityId","as":"libraries"}},{$unwind:{path:"$libraries",preserveNullAndEmptyArrays:true}},{"$lookup":{"from":"Books","localField":"libraries._id","foreignField":"libraryId","as":"books"}},{$unwind:{path:"$books",preserveNullAndEmptyArrays:true}},{$group:{_id:"$_id",name:{$first:"$name"},description:{$first:"$description"},libraries:{$push:"$libraries"},books:{$push:"$books"}}},{$project:{_id:1,name:1,description:1,libraryCount:{$size:"$libraries"},bookCount:{$size:"$books"}}}])

Result