Основная проблема заключается в том, что запросы MongoDB возвращают только целые документы. Вы фильтруете на claim_fields.title
, но система возвращает все Claim
документы, которые соответствуют.
Вы делаете distinct
, но MongoDB обрабатывает подобъекты и документы по-разному. В результате, distinct
, вероятно, не делает то, что вы хотите.
Здесь есть два возможных решения:
- Предварительный расчет через M / R. ( как вы предлагаете )
- Разбейте их на две коллекции.
Относительно # 2, нет необходимости встраивать объекты, как у вас. Встраивание должно выполняться на основе запросов, которые вы планируете выполнять чаще всего. Так что, если это общий запрос, то эти отдельные документы будут справедливыми.