sql >> Databáze >  >> NoSQL >> MongoDB

Seskupit podle dne/měsíce/týdne podle časového období

Pro seskupování na týdenní bázi spusťte následující kanál, který používá hlavně Operátoři agregace dat pro extrahování částí data:

db.collection.aggregate([
    { 
        "$project": {
            "createdAtWeek": { "$week": "$createdAt" },
            "createdAtMonth": { "$month": "$createdAt" },
            "rating": 1
        }
    },
    {
         "$group": {
             "_id": "$createdAtWeek",
             "average": { "$avg": "$rating" },
             "month": { "$first": "$createdAtMonth" }
         }
    }
])

a pro měsíční agregace vyměňte kód <>$group klíč pro použití vytvořeného pole měsíce:

db.collection.aggregate([
    { 
        "$project": {
            "createdAtWeek": { "$week": "$createdAt" },
            "createdAtMonth": { "$month": "$createdAt" },
            "rating": 1
        }
    },
    {
         "$group": {
             "_id": "$createdAtMonth",
             "average": { "$avg": "$rating" },
             "week": { "$first": "$createdAtWeek" }
         }
    }
])



  1. Vyjasnění ReactiveMongo FindAndModify

  2. Vykreslit obrázek uložený v Mongo (GridFS) pomocí Node + Jade + Express

  3. Jak filtrovat podle rozsahu měsíce a roku v Mongodb

  4. Jak efektivně převést bson na json pomocí ovladače mongo-go-driver?