Я пытаюсь посчитать использование слов, используя MongoDB. Моя коллекция сейчас выглядит так:
{'_id':###, 'username':'Foo', words:[{'word':'foo', 'count':1}, {'word':'bar', 'count':1}]}
Когда создается новый пост, я извлекаю все новые слова в массив, но я пытаюсь выяснить, можно ли использовать массив слов и увеличить счетчик, если слово уже существует.
Например, в приведенном выше примере, если пользователь "Foo" разместил "lorem ipsum foo", я бы добавил "lorem" и "ipsum" в массив слов пользователей, но увеличил счетчик для "foo".
Возможно ли это в одном запросе? В настоящее время я использую addToSet:
'$addToSet':{'words':{'$each':word_array}}
Но это, похоже, не дает никакого способа увеличить количество слов.
Буду очень признателен за помощь:)