使用 spring 在 mongodb 中创建聚合
Create aggregation in mongodb with spring
我有在 mongo 中工作的聚合,我需要在 java 中使用 spring 创建准确的聚合。我没有找到办法。不知道有没有?
db.collection_name.aggregate([
{
$group: {
_id : {
year : {$year : "$receivedDate" },
month : {$month: "$receivedDate"},
day : { $dayOfMonth : "$receivedDate"}
},
count : { $sum: 1 }
}
}
])
您可以尝试先在投影操作中使用SpEL andExpression
投影字段,然后在分组操作中按新字段分组:
Aggregation agg = newAggregation(
project()
.andExpression("year(receivedDate)").as("year")
.andExpression("month(receivedDate)").as("month")
.andExpression("dayOfMonth(receivedDate)").as("day"),
group(fields().and("year").and("month").and("day"))
.count().as("count")
);
我有在 mongo 中工作的聚合,我需要在 java 中使用 spring 创建准确的聚合。我没有找到办法。不知道有没有?
db.collection_name.aggregate([
{
$group: {
_id : {
year : {$year : "$receivedDate" },
month : {$month: "$receivedDate"},
day : { $dayOfMonth : "$receivedDate"}
},
count : { $sum: 1 }
}
}
])
您可以尝试先在投影操作中使用SpEL andExpression
投影字段,然后在分组操作中按新字段分组:
Aggregation agg = newAggregation(
project()
.andExpression("year(receivedDate)").as("year")
.andExpression("month(receivedDate)").as("month")
.andExpression("dayOfMonth(receivedDate)").as("day"),
group(fields().and("year").and("month").and("day"))
.count().as("count")
);