MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment interroger tous les sous-documents

Voici comment procéder en utilisant le cadre d'agrégation (vous devez utiliser la version 2.2 qui vient de sortir).

db.stories.aggregate(
[
    {
        "$unwind" : "$tags"
    },
    {
        "$group" : {
            "_id" : "$tags.tagname",
            "total" : {
                "$sum" : 1
            }
        }
    },
    {
        "$sort" : {
            "total" : -1
        }
    }
])

Votre résultat ressemblera à ceci :

{
    "result" : [
        {
            "_id" : "fairytale",
            "total" : 3
        },
        {
            "_id" : "funny",
            "total" : 2
        },
        {
            "_id" : "silly",
            "total" : 1
        },
        {
            "_id" : "fox",
            "total" : 1
        }
    ],
    "ok" : 1
}