Агрегационный запрос Spring MongoJAVA

Программисты JAVA общаются здесь
Ответить
Гость
 Агрегационный запрос Spring Mongo

Сообщение Гость »


Я новичок в использовании Mongo DB в Spring. У меня есть запрос к базе данных Mongo

[ { "$группа": { "_идентификатор": { "электронная почта": "$email", "faxType": "$faxType" }, "faxCount": { "$sum": 1 } }}, { "$группа": { "_id": "$_id.email", "типы факсов": { "$push": { "faxType": "$_id.faxType", "count": "$faxCount" }, }, "count": { "$sum": "$faxCount" } }}, { "$sort": { "count": -1 } }, { "$limit": 2 }, { "$проект": { "faxTypes": { "$slice": [ "$faxTypes", 2 ] }, "счет": 1 }} ] Мне нужен эквивалент описанного выше, который я могу выполнить в SpringBoot, используя шаблон Mongo. Я попытался выполнить преобразование выше с помощью MongoCompass, но полученный запрос выдает ошибку времени компиляции.

Я понимаю, что мне нужно создать несколько групп. Поэтому я начал с этого

GroupOperation groupOperationOne = Aggregation.group(propertyName, "faxType").count().as("faxCount"); GroupOperation groupOperationTwo = Aggregation.group(groupOperationOne.getFields().getField("электронная почта")).push("faxTypes"); Я не могу понять, как ссылаться на _id.email из первой групповой операции.

Каждый документ в коллекции имеет адрес электронной почты и тип факса (входящий или исходящий). Мне нужно сгруппировать все записи по электронной почте, и для каждого электронного письма мне нужно количество INBOUND faxType и OUTBOUND
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»