sql >> Databasteknik >  >> NoSQL >> MongoDB

mongodb:hitta sammanfattning av poster

Datumoperatorerna måste användas i ett $project operation, inte en $group , så du måste göra det så här istället (i skalet):

db.tickers.aggregate(
    { $project: {
        _id: 0,
        year: {$year: '$date'},
        month: {$month: '$date'},
        day: {$dayOfMonth: '$date'},
        hour: {$hour: '$date'},
        avg: '$ticker.avg'
    }},
    { $group: {
        _id: { year: '$year', month: '$month', day: '$day', hour: '$hour' },
        avg: { $avg: '$avg'}
    }});

Ger ett resultat av:

{
  "result": [
    {
      "_id": {
        "year": 2012,
        "month": 12,
        "day": 19,
        "hour": 10
      },
      "avg": 13.244705635
    }
  ],
  "ok": 1
}



  1. Hur man rensar gamla/inaktuella sessioner när man använder Mongo DB sessionslagring i Ruby on Rails 3.2

  2. Tidskomplexitet för $addToset vs $push när element inte finns i Arrayen

  3. Var är AccountKey för CosmosDB i Azure Portal

  4. Mongodb beräkningsfråga - kumulativ multiplikation