mongodb高级聚合查询

246 阅读1分钟
public double getGrandTotalByUser(String bbUid){    List<AggregationOperation> operations = new ArrayList<AggregationOperation>();    operations.add(            Aggregation.match(                    Criteria.where("buy_status").is("1").and("bb_uid").is(bbUid)            )    );    operations.add(            Aggregation.group()                    .sum("buy_amount_usdt").as("grandTotal")    );    Aggregation aggregation = Aggregation.newAggregation(operations);    AggregationResults<Object> results = mongoTemplate.aggregate(            aggregation, "rm_rome_buy_record", Object.class);    if(CollectionUtils.isEmpty(results.getMappedResults())){        return 0d;    }    LinkedHashMap<String, String> linkedHashMap = (LinkedHashMap<String, String>) results.getMappedResults().get(0);    Object grandTotal=linkedHashMap.get("grandTotal");    return Double.parseDouble(grandTotal.toString());}

public double getGrandTotalByUser(String bbUid){    List<AggregationOperation> operations = new ArrayList<AggregationOperation>();    operations.add(            Aggregation.match(                    Criteria.where("buy_status").is("1").and("bb_uid").is(bbUid)            )    );    operations.add(            Aggregation.group()                    .sum("buy_amount_usdt").as("grandTotal")    );    Aggregation aggregation = Aggregation.newAggregation(operations);    AggregationResults<Object> results = mongoTemplate.aggregate(            aggregation, "rm_rome_buy_record", Object.class);    if(CollectionUtils.isEmpty(results.getMappedResults())){        return 0d;    }    LinkedHashMap<String, String> linkedHashMap = (LinkedHashMap<String, String>) results.getMappedResults().get(0);    Object grandTotal=linkedHashMap.get("grandTotal");    return Double.parseDouble(grandTotal.toString());}