MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Groupby in MongoTemplate gibt leere Felder zurück

Ich habe das Ergebnis, von dem ich glaube, dass Sie es wollten, indem Sie Folgendes verwenden:

GroupBy groupBy = GroupBy.key("a", "b", "c")
                         .initialDocument("{ total: 0 }")
                         .reduceFunction("function(obj, result) { " +
                                         "  result.a = obj.a; " +
                                         "  result.b = obj.b; " +
                                         "  result.c = obj.c; " +
                                         "  result.total += obj.total; " +
                                         "}");

Beachten Sie, dass Sie der Reduce-Funktion mitteilen müssen, was sie in die Felder a, b und c sowie in das Feld total schreiben soll.

Dies gab mir eine Rohausgabe von:

{ "a" : 10.0 , "b" : 20.0 , "c" : 30.0 , "total" : 300.0}

Da Sie die Grouped-Klasse nicht eingeschlossen haben, bin ich mir nicht sicher, ob dies genau dem gewünschten Objekt zugeordnet ist, aber es könnte Sie in die richtige Richtung weisen.