mongodb 针对某列值返回list
迷茫
迷茫 2017-05-02 09:18:50
0
1
598
mongodb中数据结构为
{'_id': 1, 'name': 'a'}
{'_id': 2, 'name': 'b'}
{'_id': 3, 'name': 'c'}

现在可以通过
db.collection.find({}, {'name': 1})
得到list为:
[
    {'name': 'a'},
    {'name': 'b'},
    {'name': 'c'}
]

有什么方法可以得到下面的值吗(不希望把数据load到内存再循环list进行处理,mongodb本身有没有提供什么方法)
['a', 'b', 'c']
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(1)
Ty80

mongodb 支持js语法,所以直接用map就可以了

// es6 
db.collection.find({}, {'name': 1}).map( x => x.name ) // [ "a", "b", "c" ]

db.collection.find({}, {'name': 1}).map(function(x) {return x.name} ) 

map介绍请看 https://danmartensen.svbtle.com/javascripts-map-reduce-and-filter#map_1

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage