сортировка агрегации mongodb

У меня есть база данных студентов и их контактные данные. Я пытаюсь найти почтовый индекс, в котором находится большинство студентов. Документы для студентов выглядят примерно так ...

{studentcode: 'smi0001', firstname: 'bob', surname: 'smith', postcode: 2001}

Я думал, что смогу использовать структуру агрегации, чтобы узнать почтовый индекс у большинства студентов, сделав что-то вроде ...

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

это работает как ожидалось (возвращает почтовые индексы как_id и количество студентов в каждом почтовом индексе как «студентов», но если я добавлю$sort в конвейер, кажется, пытается сортировать по всей коллекции студентов, а не результаты$group операция.

как я пытаюсь выглядеть ...

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

но он возвращает всю коллекцию и игнорирует$project а также$group... Am I missing something? I thought I'd just be able to sort by descending number of students and return the first item. Thanks in advance for any help.

Ответы на вопрос(2)

Ваш ответ на вопрос