я пытаюсь получить различные первые слова в поле в базе данных:Получить отличные первые слова в строке
db.mycollection.distinct(substr(0, city.indexOf(' ')),{"state":"FirstState"})
Но это не работает obviosly, но, возможно, это помогает получить представление о том, что я хочу делать.
Скажем, у меня есть два документа:
{
"_id": "10280",
"city": "FirstCity is great",
"state": "FirstState",
"pop": 2224
},
{
"_id": "10282",
"city": "SecondCity even greater",
"state": "FirstState",
"pop": 5574
}
я тогда хочу получить:
["FirstCity","SecondCity"]
Т.е. получить отличные значения city
Поле first word
в массиве. Есть ли способ сделать это?
С наилучшими пожеланиями
Ваш вопрос непонятен. Возможно, мы поймем, можете ли вы показать нам образец документа с ожидаемым выходом – styvane
@Styvane. См. Обновленный вопрос. – user1665355
Кажется, что вы не можете достичь этого до монго 3.3.6. Но текущая стабильная версия - 3.2.10. Посмотрите это [аналогичный вопрос] (http://stackoverflow.com/questions/28282334/mongodb-group-by-field-using-substr) – gzc