Я пытаюсь выполнить запрос в моей базе данных с помощью драйвера mongo java, но перед вами стоит какая-то проблема. Я выполнил этот запрос из оболочки mongo и, похоже, работает нормально.Совокупный запрос MongoDB с драйвером JAVA
db.userData.aggregate([ { $group: {"_id": "$username"}},{$group:{"_id":"userCount","counter":{$sum:1}}}])
Это возвращает мне общее количество уникальных пользователей в моей базе данных.
Результат
{ "_id": "UserCount", "счетчик": 5}
Я хочу попробовать то же самое в JAVA. Я могу выполнять агрегированные запросы с 1 $ -группой, как и следующие (возвращает уникальных пользователей с количеством документов в базе данных для этого конкретного пользователя).
AggregateIterable<Document> iterable = db.getCollection("userData").aggregate(asList(
new Document("$group", new Document("_id", "$username").append("count", new Document("$sum", 1)))));
Но я не знаю, что делать, если мой запрос дважды использует $ group.