mongodb如何从find查询返回值列表

x9ybnkn6  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(339)

我有一个集合placements,每个记录都有字段:placement\u id,program\u id,category。。。我需要找到所有的安置什么有程序\u id=3或5,只返回一个安置\u id列表。
当我尝试这个命令时:

db.placements.find({program_id:{$in: [3, 5]}}, {placement_id:1, _id:0})

我有记录:

{ "placement_id" : 196 }
{ "placement_id" : 197 }
{ "placement_id" : 198 }
...

有没有什么方法可以返回:

[196, 197, 198...]
0yg35tkg

0yg35tkg1#

光标从 find() 不管发生什么,都会产生json文档。但是你可以提取你想要的值。可能是这样的:

get_placement_id = function(doc) { return doc.placement_id; }

db.placements.find({program_id:{$in: [3, 5]}}, {placement_id:1, _id:0}).map( get_placement_id )

==>

[ 196, 197, 198, ... ]

相关问题