【问题标题】:Convert Mongo shell script to SpringData/Java将 Mongo shell 脚本转换为 SpringData/Java
【发布时间】:2014-01-10 09:07:54
【问题描述】:

尚未接受使用 Spring Data/Java API for MongoDB,如何将以下 mongo shell 查询转换为 Spring Data/Java 查询,任何帮助都会很棒...

> db.collection.aggregate(
{$unwind : "$data.mi"},
{$sort : {"data.mi.failures" : -1}},
{$group : {_id : "$data.mi.name", 
           sum_total_of_failures : {$sum : "$data.mi.failures"}, 
           uid : {$first : "$uid"}}}
)

【问题讨论】:

    标签: mongodb mongodb-java spring-data-mongodb


    【解决方案1】:

    春天会是这个样子

        String collection="collection";
    
        Aggregation agg = newAggregation(
                unwind("data.mi")
                ,sort(DESC,"data.mi.failures")
                ,group("data.mi.name")
                .sum("data.mi.failures").as("sum_total_of_failures")
                .first("uid").as("uid")
        );
        AggregationResults<Type> aggregate = mongoOperations.aggregate(agg, collection, objectClass);
    

    假设这些导入

    import com.mongodb.BasicDBObject;
    import org.springframework.data.mongodb.core.MongoOperations;
    import org.springframework.data.mongodb.core.aggregation.Aggregation;
    import org.springframework.data.mongodb.core.aggregation.AggregationResults;
    import org.springframework.data.mongodb.core.query.Criteria;
    import org.springframework.data.mongodb.core.query.Query;
    
    import static org.springframework.data.domain.Sort.Direction.*;
    import static org.springframework.data.mongodb.core.aggregation.Aggregation.*;
    

    【讨论】:

    • 谢谢,这很有用... :)
    猜你喜欢
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多