Database
db={"appointmentCol":[{_id:ObjectId("518ee0bc9be1909012000001"),date:ISODate("2013-05-13T22:00:00Z"),patientId:ObjectId("518ee0bc9be1909012000001")},{_id:ObjectId("518ee0bc9be1909012000002"),date:ISODate("2013-05-13T22:00:00Z"),patientId:ObjectId("518ee0bc9be1909012000002")},{_id:ObjectId("518ee0bc9be1909012000003"),date:ISODate("2013-05-13T22:00:00Z"),patientId:ObjectId("518ee0bc9be1909012000003")}],"patientCol":[{"_id":ObjectId("518ee0bc9be1909012000001"),"name":"P1"},{"_id":ObjectId("518ee0bc9be1909012000002"),"name":"P2"},{"_id":ObjectId("518ee0bc9be1909012000003"),"name":"P3"},]}
Query
db.appointmentCol.aggregate([{"$lookup":{"from":"patientCol","localField":"patientId","foreignField":"_id","as":"patient"}}])