Det stängdes nyligen ett JIRA-problem
om en $split
operator som ska användas i $project
skede av aggregeringsramverket.
Med det på plats kan du skapa en pipeline som denna
db.yourColl.aggregate([
{
$project: {
words: { $split: ["$foo", " "] }
}
},
{
$unwind: {
path: "$words"
}
},
{
$group: {
_id: "$words",
count: { $sum: 1 }
}
}
])
resultatet skulle se ut så
/* 1 */
{
"_id" : "baz",
"count" : 3.0
}
/* 2 */
{
"_id" : "boo",
"count" : 2.0
}
/* 3 */
{
"_id" : "bar",
"count" : 2.0
}