sql >> Database >  >> NoSQL >> MongoDB

Zoeken naar het meest gebruikte woord in een tekenreeksveld in een verzameling

Er is onlangs een JIRA-probleem gesloten over een $split operator die moet worden gebruikt in het $project fase van het aggregatieraamwerk.
Als dat op zijn plaats is, zou je een pijplijn als deze kunnen maken

db.yourColl.aggregate([
    {
        $project: {
            words: { $split: ["$foo", " "] }
        }
    },
    {
        $unwind: {
            path: "$words"
        }
    },
    {
        $group: {
            _id: "$words",
            count: { $sum: 1 }
        }
    }
])

resultaat zou er zo uitzien

/* 1 */
{
    "_id" : "baz",
    "count" : 3.0
}

/* 2 */
{
    "_id" : "boo",
    "count" : 2.0
}

/* 3 */
{
    "_id" : "bar",
    "count" : 2.0
}


  1. Zoekopdrachten in MongoDB

  2. Het geheugengebruik analyseren en optimaliseren in Redis

  3. MongoDB-query retourneert lege array

  4. Gegevens groeperen met behulp van mongo-sjabloon