sql >> Database >  >> NoSQL >> MongoDB

MongoDB groeperen per uur

Ik zou je kunnen vertellen hoe je kunt groeperen met behulp van een aggregatieraamwerk rechtstreeks op de mongo-console

db.tweets.aggregate(
 { "$project": {
      "y":{"$year":"$created_at"},
      "m":{"$month":"$created_at"},
      "d":{"$dayOfMonth":"$created_at"},
      "h":{"$hour":"$created_at"},
      "tweet":1 }
 },
 { "$group":{ 
       "_id": { "year":"$y","month":"$m","day":"$d","hour":"$h"},
       "total":{ "$sum": "$tweet"}
   }
 })

Voor meer opties kunt u hier kijken:http://docs.mongodb.org/manual/reference/operator/aggregation-date/

Je zult ook een geschikte manier moeten vinden om het aggregatieframework te gebruiken van welke programmeertaal je ook gebruikt.



  1. Mongoose subdocument zoeken/bijwerken

  2. Slechte prestaties van opzoekaggregatie

  3. Automatisch gegenereerd veld voor MongoDB met Spring Boot

  4. Benchmarking MongoDB - NoSQL-prestaties aansturen