Wie benutzt man populate und aggregate in derselben Anweisung?
Dies ist meine Terminsammlung:
{ _id: ObjectId("518ee0bc9be1909012000002"), date: ISODate("2013-05-13T22:00:00Z"), patient:ObjectId("518ee0bc9be1909012000002") }
{ _id: ObjectId("518ee0bc9be1909012000002"), date: ISODate("2013-05-13T22:00:00Z"), patient:ObjectId("518ee0bc9be1909012000002") }
{ _id: ObjectId("518ee0bc9be1909012000002"), date: ISODate("2013-05-13T22:00:00Z"), patient:ObjectId("518ee0bc9be1909012000002") }
Ich habe das Aggregat verwendet, um das folgende Ergebnis zu erhalten
{date: ISODate("2013-05-13T22:00:00Z"),
patients:[ObjectId("518ee0bc9be1909012000002"),ObjectId("518ee0bc9be1909012000002"),ObjectId("518ee0bc9be1909012000002")] }
so was:
Appointments.aggregate([
{$group: {_id: '$date', patients: {$push: '$patient'}}},
{$project: {date: '$_id', patients: 1, _id: 0}}
], ...)
Wie kann ich das von mir überprüfte Patientendokument ausfüllen, aber es funktioniert nicht?Appointments.find({}).populate("patient").aggregate
....
Mit anderen Worten, kann ich auffüllen und aggregieren in der gleichen Anweisung verwenden
Hilfe bitte