以下のクエリで
{ $group : {
_id : { success:'$success', responseCode:'$responseCode', label:'$label'},
max_timeStamp : { $timeStamp : 1 },
count_responseCode : { $sum : 1 },
avg_value : { $sum : "$value" },
count_success : { $sum : 1 }
}}
_id : { success:'$success', responseCode:'$responseCode', label:'$label'},
Java mongodb ドライバーで使用するように変換する方法 。
私は試した
BasicDBList list = new BasicDBList();
list.add(new BasicDBObject("success", "$success"));
list.add(new BasicDBObject("responseCode", "$responseCode"));
list.add(new BasicDBObject("label", "$label"));
AggregationOutput output = collection.aggregate(match, project, group);
と
多次元配列
String [][] muitiGroupBy = {{"success", "$success"},{"responseCode", "$responseCode"},{"label", "$label"}};
等..
しかし、私は常に結果としてこのようになります
"_id" : [ { "success" : "$success"} , { "responseCode" : "$responseCode"}]
フィールドを 1 つだけ使用すると機能します。
DBObject groupFields = new BasicDBObject( "_id", new BasicDBObject("success", "$success"));