Я пытаюсь решить один вариант использования. В конвейере агрегации необходимо создать уникальный массив из одного поля, сохранив порядок путем сортировки документов.
$ addtoset создает уникальный массив, но порядок не сохраняется, тогда как pu sh сохраняет порядок, но допускается наличие дубликатов . Что делать в этом сценарии?
Пример: входные документы в коллекции
{
studentid: 1,
createddate: 2020-05-24
exam:english
}
{
studentid: 1,
createddate: 2020-05-25
exam: maths
}
{
studentid: 1,
createddate: 2020-05-26
exam:physics
}
{
studentid: 1,
createddate: 2020-05-27
exam:maths
}
{
studentid: 1,
createddate: 2020-05-28
exam:chemistry
}
Ожидаемый результат:
{
studentid:1,
exam:[chemistry,maths,physiscs,english]
}