如何仅从nodejs中的mongodb返回值而不是key:value对
在某个字段上search集合时,我可以指定我只想返回某些字段。 在只返回一个字段的情况下,我们说“_id”,find命令返回一个key:value对数组[有没有发现只返回一个数组的值? 如:[123,234,345]
我可以自己按摩返回的数组,但是如果mongodb可以为我做这个,那么我宁愿这样做。
为了获得这种输出,你必须使用聚合框架。 即使在汇总框架下,你能得到的最好的结果是:
{ values: [ 123, 234, 345 ] }
你基本上不得不使用$group
来将所有的值集中在一起。 像这样的东西:
db.collectionName.aggregate({ $group: { values: { $push: "$_id" } } });
我不确定你是否需要一个_id
作为组,但是如果上述不起作用,你可以添加它。 我不确定这是否会比在search结束后按摩它更快。
- Async.waterfall,foreach和parsingJSON node.js. 需要一些build议
- Node.js + mongoose
- 删除使用mongoose返回错误的子文档?
- 使用node.js csv模块从mongodb生成csv文件
- 为什么mongoose.connect()在没有作为mongoose对象的方法时工作得很好?
- 如何从node.js更新mongodb文档?
- findOneAndUpdatemongoose需要太长的'唯一'20kasynchronous更新
- 如何在Mongoose.js模式中表示ES6映射
- 在AngularJS,NodeJS,MongoDB,Mongoose和ExpressJS中使用单一表单发布到多个集合