MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Mongo groupby month przy użyciu czasu milisekundowego UNIX

Możesz spróbować poniższej agregacji w mongodb 4.0

Możesz przekonwertować timestamp do tej pory przy użyciu $toDate agregacja, a następnie $group z $month agregacja

db.collection.aggregate([
  { "$match": { "type": "deposits" }},
  { "$addFields": {
    "date": {
      "$toDate": "$timestamp"
    }
  }},
  { "$group": {
    "_id": { "$month": "$date" },
    "deposits": {
      "$push": "$$ROOT"
    }
  }}
])

Możesz spróbować poniższej agregacji w mongodb 3.4

W 3.4 możesz przekonwertować timestamp do tej pory przez dodanie new Date() w nim i $group za pomocą $dateToString agregacja

db.collection.aggregate([
  { "$match": { "type": "deposits" }},
  { "$addFields": {
    "date": {
      "$add": [ new Date(0), "$timestamp" ]
    }
  }},
  { "$group": {
    "_id": {
      "$dateToString": {
        "format": "%m",
        "date": "$date"
      }
    },
    "deposits": {
      "$push": "$$ROOT"
    }
  }}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wstaw element do zagnieżdżonych tablic w MongoDB

  2. Przełącz kolekcję w mongoengine na zapytanie wyszukiwania

  3. Liczba dokumentów Mongodb

  4. niestandardowe pola _id Django MongoDB MongoEngine

  5. Popraw pola zapytań w MongoDB