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

Mongo grupper efter måned med UNIX millisekund tid

Du kan prøve nedenstående aggregering i mongodb 4.0

Du kan konvertere timestamp til dato ved hjælp af $toDate aggregering og derefter $group med $month aggregering

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

Du kan prøve nedenstående aggregering i mongodb 3.4

I 3.4 du kan konvertere timestamp til dato ved at tilføje new Date() i den og $group det ved at bruge $dateToString aggregering

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



  1. Hvad er den bedste måde at gemme billeder til expressjs, mongodb-webstedet?

  2. Sådan skriver du fagforeningsforespørgsler i mongoDB

  3. Hvordan henter man data fra MongoDB-samling i C# ved hjælp af regulært udtryk?

  4. Chef Solo fejl:Kogebog apt ikke fundet