2017-06-21 5 views
1
Aggregation agg = newAggregation(
        match(criteria), 
        group("username").count().as("userCount"), 
        project("userCount").and("_id").as("user") 
      ); 

    AggregationResults<MyTarget> dataObjects = mongoTemplate 
      .aggregate(agg, <collectionName>, MyTarget.class); 

を使用してMongoDBの集計機能に「プロジェクトの中で余分なキーと値のペアを追加し、私は1つの以上のフィールドは言うてきた - 「extraField」 - いくつかのいずれかを割り当てることができMyTargetクラスにあらかじめ定義された値( "abc"と "xyz"と言う)。私はMongoDBを打つ前にこの値を知っています。上記の例では、スプリングのmongoテンプレート

この余分なKey-Value ["extraField": "abc"]のペアを上記の投影に追加するにはどうすればよいですか。

答えて

2

使用$literal

project("userCount").and("_id").as("user").and("abc").asLiteral().as("extraField") 
+0

は、あなたがこれを見てとることができますplzは - https://stackoverflow.com/questions/45077570/mongodb-aggregation-add-arrays-value-by-value-in-groupステップ – Harish

関連する問題