sortowanie agregacji mongodb

Mam bazę danych studentów i ich dane kontaktowe. Próbuję znaleźć kod pocztowy, który mieści większość studentów. Dokumenty dla studentów wyglądają mniej więcej tak ...

{studentcode: 'smi0001', firstname: 'bob', nazwisko: 'smith', kod pocztowy: 2001}

Myślałem, że mogę użyć struktury agregacji, aby znaleźć kod pocztowy z większością uczniów, robiąc coś takiego ...

db.students.aggregate({$project: { postcode: 1 }, $group: {_id: '$postcode', students: {$sum: 1}}})

działa to zgodnie z oczekiwaniami (zwraca kody pocztowe jako_id oraz liczba studentów w każdym kodzie pocztowym jako „studenci”, ale jeśli dodam$sort do potoku wydaje się próbować sortować według całej kolekcji uczniów, a nie wyników$group operacja.

co próbuję wyglądać ...

db.students.aggregate({$project: { postcode: 1 }, $group: {_id: '$postcode', students: {$sum: 1}}, $sort: {_id: -1}})

ale zwraca całą kolekcję i lekceważy$project i$group... Czy czegoś brakuje? Pomyślałem, że będę mógł sortować po malejącej liczbie uczniów i zwrócić pierwszy przedmiot. Z góry dziękuję za wszelką pomoc.

questionAnswers(2)

yourAnswerToTheQuestion