0

次の MongoDB クエリを、Java DB ドライバーを使用してデータを取得する Java プログラムに変換するためのガイダンスが必要です。ご指導いただければ幸いです。

db.playerscorecollection.aggregate([ 

{ 

 $unwind: "$scorearray"

}, 

{ 
$group: 
{ 

   _id: {player:'$player,venue:'$venue'}, maxScore: { $max: "$scorearray.score" } 

} 

} 

]); 
4

1 に答える 1

1

http://docs.mongodb.org/ecosystem/tutorial/use-aggregation-framework-with-java-driver/のドキュメントとチュートリアルは非常に広範です。この回答の残りの部分を読む前に、最初にそれを読んでください。一般に、次のようなものが機能するはずです。

// create our pipeline operations, first the $unwind
DBObject unwind = new BasicDBObject( "$unwind", "$scorearray" );

DBObject groupIdFields = new BasicDBObject( "player", "$player" );
groupIdFields.put( "venue", "$venue" );
DBObject groupFields = new BasicDBObject( "_id", groupIdFields );
groupFields.put( "maxScore", new BasicDBObject( "$max", "$scorearray.score" ) );
DBObject group = new BasicDBObject( "$group", groupFields );

// run aggregation
AggregationOutput output = MDB.getCollection("playerscorecollection").aggregate( unwind, group );
于 2013-07-11T07:38:46.060 に答える