如何在 Spring 数据 Mongodb 中进行分组而不进行聚合?

How do I GroupBy in Spring Data Mongodb without Aggregation?

我有如下数据,我想按类型对该数据进行分组,我使用的是 spring-data-mongodb .

[
    {
        "_id" : ObjectId("58a5518aace6132a88309d98"),
        "type" : "SMS",
    },
    {
        "_id" : ObjectId("58a5518bace6132a88309d99"),
        "type" : "PUSH_NOTIFICATION",
    },
    {
        "_id" : ObjectId("58a5519aace6132a0094d7df"),
        "type" : "SMS",
    },
    {
        "_id" : ObjectId("58a5519aace6132a0094d7e0"),
        "type" : "PUSH_NOTIFICATION",
    }
]

我正在使用这个方法,但行不通。

GroupByResults<Queuing> results = mongoTemplate.group("queuing",
                GroupBy.key("type"), Queuing.class);

任何人都知道使用 spring-data-mongodb.

进行此分组的最佳和明确方法

谢谢。

这是 group 操作的正确语法。

GroupByResults<Queuing> results = mongoTemplate.group("queuing",
            GroupBy.key("type").initialDocument("{}").reduceFunction("function(doc, prev) {}"),
            Queuing.class);

这里有更多信息http://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#mongo.group.example