MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come raggruppare per più campi in MongoDB quando uno è un campo data

Devi usare il $dayOfYear oggetto come valore di un nuovo campo nel tuo _id , in questo modo:

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

Uscita:

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