Самый простой способ получить все документы из уникальной коллекции, основанной на одном поле.Mongo найти уникальные результаты
Я знаю, что могу использовать db.collections.distrinct для получения массива всех различных значений поля, но я хочу получить первый (или действительно любой) документ для каждого отдельного значения одного поля.
например. если база данных содержала:
{number:1, data:'Test 1'}
{number:1, data:'This is something else'}
{number:2, data:'I'm bad at examples'}
{number:3, data:'I guess there\'s room for one more'}
он вернется бы (на основе number
является уникальным:
{number:1, data:'Test 1'}
{number:2, data:'I'm bad at examples'}
{number:3, data:'I guess there\'s room for one more'}
Edit: Я хотел бы добавить, что сервер не работает Монго 2.0.8 так что нет агрегации и есть больше результатов чем группа поддержки.
Обновление до 2.4 и использовать агрегирование :) – Philipp
использования «отчетливый» запрос –
Вы можете обнаружить, что агрегированные результаты, даже если они были поддержаны на версии, которую вы используете, может не поддерживать размер набора результатов, который вам нужен. – WiredPrairie