正文
今天有一个需求,须要将aggregate的返回值转换成一个字符串数组,这个事情颇为费了一番脑筋,最后终于得以解决,参考这里。java
db.users.aggregate([ { "$unwind": "$emails" }, { "$group": { "_id": "$emails.address" } } ]).map(function(el) { return el._id })
aggregate返回的老是对象,对这个结果直接使用map方法,对其进行转换。应该参考的是这里,使用了cursor的概念,这里还有toArray的方法,这个方法也很是有用。mongodb
在aggregate的输出后面,使用map方法,返回id
的值。数组
参考
https://stackoverflow.com/questions/33425565/how-to-return-array-of-string-with-mongodb-aggregation
https://examples.javacodegeeks.com/software-development/mongodb/mongodb-map-example/spa