使用spring mongo进行自定义聚合

时间:2015-02-23 09:39:41

标签: mongodb aggregation-framework spring-data-mongodb spring-mongo

我正在尝试进行聚合查询,该搜索结合了来自2个集合的文档,如下所示:

db.clientData.aggregate([{
    $match: {
        id: {
            $in: db.clients.distinct("_id",
            {
                "tag": "qa"
            })
        }
    }
},
    $group: {
        _id: "$computerId",
        total_usage: {
            $sum: "$workingTime"
        }
    }
}]);

当我从mongo shell运行它时工作正常,但是我无法从spring mongo运行它。

我知道如何使用'BasicDBObject'创建自定义查询,但我不知道如何使用“db.clients.distinct(”。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

以下是示例:

basicDBObject.put("tarih",
                    new BasicDBObject("$gte", begisRequest.getBaslamaZamani())
                            .append("$lte", begisRequest.getSonaErmeZamani()));

isimler = mongoTemplate.getCollection("kesmePersonelDto").distinct(
                    "adi", basicDBObject);