我尝试在数据库的字段中获得不同的第一个单词:
db.mycollection.distinct(substr(0, city.indexOf(' ')),{"state":"FirstState"})
但这并不适用,但也许有助于了解我想做什么。
说我有两份文件:
{
"_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
的不同值。
有没有办法做到这一点?
最好的问候
答案 0 :(得分:2)
您可以使用 map()
方法返回列表,如下所示
Mongo Shell:
cities = db.mycollection.distinct("city", {"state" : "FirstState"}).map(function(city){
return city.split(" ")[0];
});
printjson(cities);
示例输出
[ "FirstCity", "SecondCity" ]