Database
db={"vendors":[{"name":"Alfred","location":"FH","vendorOrgId":"1"},{"name":"Alfred","location":"ADH","vendorOrgId":"2"},{"name":"Alfred","location":"AFF","vendorOrgId":"41"}],"vendorOrg":[{"orgName":"star super market","vendorOrgId":"1","category":"grocery","status":"active"},{"orgName":"L.f super market","vendorOrgId":"41","category":"grocery","status":"active"},{"orgName":"Fresh mart","vendorOrgId":"2","category":"Milk","status":"active"}]}
Query
db.vendors.aggregate([{$lookup:{from:"vendorOrg",let:{vendorOrgId:"$vendorOrgId"},pipeline:[{$match:{$expr:{$eq:["$$vendorOrgId","$vendorOrgId"]},status:"active"}},{$project:{_id:1,category:1}}],as:"org"}},{$unwind:"$org"},{$group:{_id:"$org.category",vendors:{$push:{name:"$name",location:"$location",vendorOrgId:"$vendorOrgId"}}}},{$group:{_id:null,vendors:{$push:{k:"$_id",v:"$vendors"}}}},{$replaceRoot:{newRoot:{$arrayToObject:"$vendors"}}}])