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

So gruppieren Sie nach mehreren Feldern in MongoDB, wenn es sich bei einem um ein Datumsfeld handelt

Sie müssen den $dayOfYear verwenden Objekt als Wert eines neuen Feldes in Ihrer _id , etwa so:

db.builds.aggregate(
    { $group: { 
        _id: { 
            build_result: "$build_result", 
            dayOfYear: { $dayOfYear: "$build_timestamp" }
        },
        build_duration: { $avg: "$build_duration" } 
    } }
)

Ausgabe:

{
  "result": [
    {
      "_id": {
        "build_result": "SUCCESS",
        "dayOfYear": 15
      },
      "build_duration": 667075
    }
  ],
  "ok": 1
}