Dữ liệu mùa xuân 1.3.0.RC1 có sẵn và nó hỗ trợ khung tổng hợp.
Ví dụ:Tổng hợp shell comand:
db.eft_transactions.aggregate(
{$match:
{
service:"EFT",
source:"MARKUP",
}
},
{$group:
{
_id:"$card_acceptor_id",
tran_count:{$sum:1},
amount_sum:{$sum:"$amount"}
}
}
)
được chạy như thế này từ java:
AggregationOperation match = Aggregation.match(Criteria.where("service").is("EFT").and("source").is("MARKUP"));
AggregationOperation group = Aggregation.group("card_acceptor").and("amount_sum").sum("amount").and("tran_count").count();
Aggregation aggregation = newAggregation(match, group);
AggregationResults<StoreSummary> result = this.mongoTemplate.aggregate(aggregation, "eft_transactions", StoreSummary.class);
Tài liệu là tại đây
LƯU Ý:Gần đây chúng tôi đã phải chuyển sang sử dụng bản dựng BUILD-SNAPSHOT của phiên bản 1.3.0. Thay đổi này đòi hỏi phải thay đổi 2 trong số các dòng trên đã chuyển thành:
AggregationOperation group = Aggregation.group("card_acceptor").sum("amount").as("amount_sum").count().as("tran_count");
Aggregation aggregation = Aggregation.newAggregation(match, group);