Un problème JIRA
a récemment été fermé à propos d'un $split
opérateur à utiliser dans le $project
étape du cadre d'agrégation.
Avec cela en place, vous pouvez créer un pipeline comme celui-ci
db.yourColl.aggregate([
{
$project: {
words: { $split: ["$foo", " "] }
}
},
{
$unwind: {
path: "$words"
}
},
{
$group: {
_id: "$words",
count: { $sum: 1 }
}
}
])
le résultat ressemblerait à ça
/* 1 */
{
"_id" : "baz",
"count" : 3.0
}
/* 2 */
{
"_id" : "boo",
"count" : 2.0
}
/* 3 */
{
"_id" : "bar",
"count" : 2.0
}