"sourceList": [
{
"source" : "hello world, how are you?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "hello world, I am fine",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "Is it raining?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
}
]
Всего слов в hello world, how are you?
= 5, в hello world, I am fine
= 5 и в Is it raining?
= 3.
Таким образом, общее количество слов = 13
Есть ли запрос mon go для этого расчета? Я мог бы сделать это, используя javascript, но есть ли прямой способ запроса через mon go?
EDIT
Есть ли способ сделать этот запрос по документам? Для документов, удовлетворяющих критериям c, я хочу выполнить аналогичный расчет с добавленным ограничением, чтобы слова из повторяющихся предложений не учитывались дважды. Например,
Документ - 1
"sourceList": [
{
"source" : "hello world, how are you?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "hello world, I am fine",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "Is it raining?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
}
]
Документ - 2
"sourceList": [
{
"source" : "hello world, how are you?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "hello world, I am fine",
"_id" : ObjectId("5f0eb9946db57c0007841153")
},
{
"source" : "Is it raining?",
"_id" : ObjectId("5f0eb9946db57c0007841153")
}
]
Здесь счетчик остается прежним. Причина в том, что предложения в обоих документах одинаковы. Но если мы объединим Документ 1 + Документ 3 (полученный следующим образом)
"sourceList": [
{
"source" : "Look at the beautiful tiger!",
"_id" : ObjectId("5f0eb9946db57c0007841153")
}
]
, количество получится как 13 + 5 (документ 3) = 18.