如何仅从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结束后按摩它更快。