Database

db={table1:[{id:1,item:"apple",house:"A"},{id:2,item:"apple",house:"A"},{id:3,item:"apple",house:"B"},{id:4,item:"banana",house:"B"},{id:5,item:"banana",house:"C"},{id:6,item:"pear",house:"A"},{id:7,item:"pear",house:"B"},{id:8,item:"pear",house:"A"},{id:9,item:"pear",house:"C"}],table2:[{id:1,fruits:"apple",type:"important"},{id:2,fruits:"banana",type:"important"},{id:3,fruits:"pear",type:"notImportant"}]}

Query

db.table1.aggregate([{$lookup:{from:"table2",localField:"item",foreignField:"fruits",as:"fruits"}},{$unwind:{path:"$fruits",preserveNullAndEmptyArrays:true}},{$group:{_id:"$house",totalItem:{$sum:1},noOfImportant:{$sum:{$cond:{if:{$eq:["$fruits.type","important"]},then:1,else:0}}},}},{$addFields:{house:"$_id"}},{$project:{_id:0}}])

Result